好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

sql行列转换

@sql varchar ( 200 ) select @sql = ISNULL ( @sql + ‘ , ‘ , ‘‘ ) + course from RToC group by course select @sql

效果:

4

接下来,关键的行转列的函数pivot出场了,通过这个函数我们把分数填充到转换的列语文、数学的列值。

 declare   @sql   varchar ( 200  )
  select   @sql  =  ISNULL ( @sql  +  ‘  ,  ‘ , ‘‘ ) + course  from  RToC  group   by   course
  set   @sql  =  ‘  select * from RToC pivot(max(score) for course in (  ‘  +  @sql  +  ‘  )) t  ‘   
 exec ( @sql )
5

我们运行后,可以得到行转列的结果,如下图所示。

6

通过以上几个步骤,我们就可以轻松的实现行列转换了。同样,我们如果要把列转换成行, 应该怎么做呢?同样我们可以采用unpivot函数轻松实现。

sql行列转换

标签:

查看更多关于sql行列转换的详细内容...

  阅读:28次