50个SQL语句(MySQL版) 问题三
程序员文章站
2022-07-05 08:56:17
表结构 student(StuId,StuName,StuAge,StuSex) 学生表 teacher(TId,Tname) 教师表 course(CId,Cname,C_TId) 课程表 sc(SId,S_CId,Score) 成绩表 问题三:查询所有同学的学号、姓名、选课数、总成绩 SELEC ......
--------------------------表结构--------------------------
student(stuid,stuname,stuage,stusex) 学生表
teacher(tid,tname) 教师表
course(cid,cname,c_tid) 课程表
sc(sid,s_cid,score) 成绩表
----------------------------------------------------------
问题三:查询所有同学的学号、姓名、选课数、总成绩
select b.stuid,b.stuname,count(a.s_cid), sum(case when a.score is null then 0 else a.score end) from sc a right join student b on a.sid=b.stuid group by stuid;
答案仅供参考,不一定完全正确,若发现错误或有更好的,欢迎评论,互相交流,一起成长!!!
上一篇: 50个SQL语句(MySQL版) 问题四
下一篇: mysql数据库的SELECT高级应用
推荐阅读