行列转换--普通
假设有张学生成绩表(CJ)如下
Name Subject Result
张三 语文 80
张三 数学 90
张三 英语 85
李四 语文 85
李四 数学 92
李四 英语 82
想变成
姓名 语文 数学 英语
张三 80 90 85
李四 85 92 82
--静态sql
select Name,
sum(case when Subject='语文' then Result else 0 end)语文,
sum(case when Subject='数学' then Result else 0 end)数学,
sum(case when Subject='英语' then Result else 0 end)英语
from CJ group by name
--动态sql
declare @sql varchar(max)
set @sql='select Name'
select @sql=@sql+',sum(case when Subject='''+Subject+''' then Result else 0 end)'+Subject from (select distinct Subject from CJ)t
set @sql=@sql+' from CJ group by Name '
exec(@sql)
分享到:
相关推荐
行列互换工具毫秒级_V2.2.2行列转换
sql行列转换扩展 明源内部学习资料
oracle行列转换,通过实例来实现表的行列转换
MSSQL行列转换存储过程MSSQL行列转换存储过程
sql server 行列转换.
SQL语句行列转换(附带数据库、表、视图操作) ,不错的文档。
EXCEL 行列转换工具
oracle sql行列转换
行列转换问题,不要积分
行列转换SQL存储过程代码,简单的将行数据转换为列展示
动态 实现 SQL 2008行列转换的pivot
Oracle行列转换,一个挺经典的例子,值得学习和思考……
Sql语句实现表的行列转换,行转列,列转行
通过一条查询语句,进行行列转换。例如 姓名 课程 分数 张三 语文 74 张三 数学 83 张三 物理 93 李四 语文 74 李四 数学 84 李四 物理 94 想变成(得到如下结果): 姓名 语文 数学 物理 ---- ---- ---- ---- 李四 ...
在EXCEL中可以方便进行行列转换 例如: 1 a 1 b 2 a 可转化为: 1 a b 2 a 反之亦可以,便于进行统计
java面试题之行列转换 Oracle 和SQLServer两种方式 详细例子以及说明 一条语句实现,绝对看得懂! 方便理解!
行列转换的小工具 可以进行行列互转,非常好用,
ORACLE 行列转换,ORACLE,行列转换