从S(学号,姓名,年龄,生日)表和SC(学号,课程号,成绩)表中查询出没有选择课程号为1001的课程的所有学生的学号和姓名。
请问这个查询SQL语句该怎么写?
select s.number,s.name
from s where not exists (
select 1 from sc where sc.number=s.number and sc.course<>'1001');
参考自:
EXISTS、IN与JOIN的用法区别 http://www.data.5helpyou.com/article307.html
select s.number,s.name from s join sc on s.number=sc.number where sc.course not in ("1001"); 仅供参考