当前位置: 代码迷 >> SQL >> sql语句-关于行列互换等有关问题的查询语句
  详细解决方案

sql语句-关于行列互换等有关问题的查询语句

热度:57   发布时间:2016-05-05 13:45:16.0
sql语句-关于行列互换等问题的查询语句
1.表结构如下:
1991  1.1 21
1991  1.2 22
1991  1.3 23
1992  1.1 24
1992  1.2 25
1992  1.3 26

查出的结果为:

年份  1.1 1.2 1.3
1991 21  22   23
1992 24  25   26

select year as '年份' ,
  max(case a when '1.1' then b else 0 end) '1.1',
  max(case a when '1.2' then b else 0 end) '1.2',
max(case a when '1.3' then b else 0 end) '1.3'
from years
group by year



2.查询每门课都大于80分的学生成绩:
张三   语文  70
张三   英语  89
张三   数学  87
李四   语文  88
李四   英语  98
李四   数学  96

select distinct(name) from score where name not in(select name from score where scores<80)



  相关解决方案