首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

编纂sql语句

2013-06-25 
编写sql语句有一张student表姓名科目成绩小明数学50小明语文60小明外语70小黑数学80小黑语文90小黑外语100

编写sql语句
有一张student表
姓名  科目  成绩
小明  数学  50
小明  语文  60
小明  外语  70
小黑  数学  80
小黑  语文  90
小黑  外语  100

写一条sql语句变成
姓名  数学  语文  外语
小明  50    60    70
小黑  80    90    100 SQL
[解决办法]
刚学oracle吧?这是最简单的行列转换了。

select t.姓名,
       sum(decode(t.科目, '数学', t.成绩, 0)) 数学,
       sum(decode(t.科目, '语文', t.成绩, 0)) 语文,
       sum(decode(t.科目, '外语', t.成绩, 0)) 外语
  from student t
  group by t.姓名;

热点排行