SQL列行转换
代码 /* 标题:普通行列转换(version 2.0) 作者:爱新觉罗.毓华 时间:2008-03-09 地点:广东深圳 说明:普通行列转换(version 1.0)仅针对sql server 2000提供静态和动态写法,version 2.0增加sql server 2005的有关写法。 问题:假设有张学生成绩表(tb)如下: 姓名 课程 分数 张三 语文 74 张三 数学 83 张三 物理 93 李四 语文 74 李四 数学 84 李四 物理 94 想变成(得到如下结果): 姓名 语文 数学 物理 ---- ---- ---- ---- 李四 74 84 94 张三 74 83 93 ------------------- */ create table tb(姓名 varchar ( 10 ) , 课程 varchar ( 10 ) , 分数 int ) insert into tb values ( ' 张三 ' , ' 语文 ' , 74 ) insert into tb values ( ' 张三 ' , ' 数学 ' , 83 ) insert into tb values ( ' 张三 ' , ' 物理 ' , 93 ) insert into tb values ( ' 李四 ' , ' 语文 ' , 74 ) insert into tb values ( '