当前位置: 代码迷 >> Sql Server >> 简单sql 帮下忙碌,该如何解决
  详细解决方案

简单sql 帮下忙碌,该如何解决

热度:87   发布时间:2016-04-27 18:46:11.0
简单sql 帮下忙碌
A B 
  a 1
  a 2
  a 3
  a 4

期户结果
A B C D E
a 1 2 3 4

------解决方案--------------------
SQL code
--动态SQL,指subject不止语文、数学、物理这三门课程。declare @sql varchar(8000)set @sql = 'select Name as ' + '姓名'select @sql = @sql + ' , max(case Subject when ''' + Subject + ''' then Result else 0 end) [' + Subject + ']'from (select distinct Subject from tb) as aset @sql = @sql + ' from tb group by name'exec(@sql) /*姓名         数学        物理        语文          ---------- ----------- ----------- ----------- 李四         84          94          74张三         83          93          74*/
  相关解决方案