SQL查询选修了全部课程的学生姓名
问题描述:
SQL查询选修了全部课程的学生姓名
查询选修了全部课程的学生姓名
:student 是学生表 course 是选课表 sc 是课程表
select sname
from student
where not exists
(select *
from course
where not exists
(select *
from sc
where sno =student.sno
and cno=course.cno)
select *
from course
where not exists
(select *
from sc
where sno =student.sno
and cno=course.cno)
这一段计算为什么就得出 某学生存在没有选的课程?
答
第一问:两个NOT EXISTS表示双重否定:没有一个选了课的学生没有选course表里的课程select snamefrom studentwhere not exists /*没有一个学生满足以下条件*/(select * from cours...