SQL数据库中查询选修了所有课程的学生的学号和姓名及选修门数

是代码

所有离开了数据结构(表结构)的SQL语句都是白搭!

先假设数据结构为

学生表(学号 主键或设有唯一索引,姓名,性别)

课程表(课程号 主键或设有唯一索引,课程名)

选课表(课程号,学号)-- 字段“课程号”和“学号"设有双字段唯一索引

查询出选修了所有课程的学生的学号、姓名和选修门数:

select a.学号,b.姓名,a.cnt as 选修门数 from 
(select 学号,count(1) as as cnt from 选课表 group by 学号 
having count(1)=(select count(1) from 课程表)) a,
学生表 b where a.学号=b.学号;

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-11-04
select S.Sname, S.Ssex , S.Sage, S.Sdept C.Cname G.grade from Student S , Course C ,Grade G WHERE S.Sno = G.Sno AND G.Cno = C.Cno;
相似回答