表名:成绩表 T_Score
(sno)学号 (KC)课程 (Score)成绩
04105124 会计 85
04105124 英语 80
04105124 微积分 60
04105125 英语 50
04105125 会计 84
04105125 微积分 54
04105126 微积分 40
04105126 英语 80
04105126 会计 60
同一个学号固定的有N条记录,是固定一对多的关系 比如 上面列举的3门课程
值得注意的是数据表中课程的顺序是被打乱的,也就是说不同学号对应的课程顺序都是不一样的
但是对应的内容都是固定的
要求查询结果是这样的
(sno)学号 (WJF)微积分 (YY)英语 (KJ)会计
04105124 60 80 85
04105125 54 50 84
04105126 40 80 60
解答:
select sno
,SUM(case kc when ‘微积分’ then Score else 0 end) as 微积分
,SUM(case kc when ‘英语’ then Score else 0 end) as 英语
,SUM(case kc when ‘会计’ then Score else 0 end) as 会计
from T_Score group by sno
作者:yufangbo
来源:CSDN
原文:https://blog.csdn.net/yufangbo/article/details/2039540
版权声明:本文为博主原创文章,转载请附上博文链接!