当前位置: 代码迷 >> Sql Server >> 怎么把一张表的内容竖着排列?
  详细解决方案

怎么把一张表的内容竖着排列?

热度:30   发布时间:2016-04-24 23:26:43.0
如何把一张表的内容竖着排列??
table1 有字段:姓名,科目,分数 
table2 有字段:name,语文,数学,英语
求将将表1值插入并创建表2的语句
---=---表1------
姓名 科目 分数
张三 语文 99 
张三 英语 97 
张三 数学 98
李四 语文 96
李四 数学 95
李四 英语 94
---=---表2------
name 语文 英语 数学
张三  99   97   98
李四  96   95   94
SQL??mysql?oracle?

------解决方案--------------------

select 姓名,
max(case when 科目='语文' then 分数 else 0 end),语文,
max(case when 科目='数学' then 分数 else 0 end),数学,
max(case when 科目='英语' then 分数 else 0 end),英语
FROM 表1
GROUP BY 姓名

  相关解决方案