感谢大佬提供的源码
当选课不可重复情况下
-- 1列出所有的学生信息
SELECT s.* from student s
-- 2将学生表和成绩表关联起来
left JOIN stu_sco stu on
-- 3以学生的学号进行关联
s.S_id=stu.s_id and stu.c_id
-- 4判断(学生的课程id在学号为01的学生的选课id中)这是一个子列表
in (select c_id from stu_sco where s_id = '01')
-- 5以学生 的学号进行分组
GROUP BY s.S_id
过滤结果集 判断其他学生的选课的数量 是否和 学号为一的学生的选课数量一样
having count(s.s_id)=(select count(c_id) from stu_sco where s_id = '01');
源码博主 https://blog.youkuaiyun.com/qq_32591415
感谢大佬提供的指导