sql server查询选修课程多于2门的学生的信息以及他们所选修的课程信息

img

img

查询问题,选修课程多于2门的学生的信息以及他们所选修的课程信息

题主要的代码如下,有帮助麻烦点个采纳【本回答右上角】,谢谢~~有其他问题可以继续交流~

img

img


select student.*,course.*,sc.*
from student
left join
(select sno,cno,grade from sc where sno in(select sno from sc group by sno having  COUNT(sno)>2)) sc
on sc.sno=student.sno
left join course on course.cno=sc.cno
where student.sno=sc.sno

你可以将这三张表连接起来,然后使用group by语句。

代码如下

select s.*,cc.c.cname, from student s left join
 (select sc.sno,c.cname from sc left join course c sc.cno=c.cno  
  group by sc. sno,c.cname 
where count(sc.cno)>2) cc 
on s.sno=cc.sc.sno

思路如下:先查询选修课大于2的学生学号和课程名,然后再根据查出的学号和学生表进行连接查询,查询学生信息,顺带输出课程名

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632