永发信息网

sql语句怎么把一个表里列的值作为另外一个表的列

答案:1  悬赏:20  手机版
解决时间 2021-03-08 12:57
  • 提问者网友:树红树绿
  • 2021-03-08 02:32
例如:我有一个学生表 Student
UID Name
1 张三
2 李四

另外有个课程表 course
RID CID courseID
1 2 语文
2 1 数学

还有一个成绩表 Score
CID UID score
1 2 11
1 1 13
2 1 22
最后的结果是
学号 姓名 语文 数学
1 张三 11 12
2 李四 2 2 23
大概就是这个意思 请各位大虾帮帮忙
2 2 23
最佳答案
  • 五星知识达人网友:想偏头吻你
  • 2021-03-08 03:25
select
学号=s.UID,
姓名=s.Name,
语文=sum(case when c.courseid='语文' then sc.score end),
数学=sum(case when c.courseid='数学' then sc.score end)
from student s join score sc on s.uid=sc.uid
join course c on c.cid=sc.cid
group by s.uid,s.Name
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯