【发布时间】:2021-05-07 21:56:49
【问题描述】:
我需要找到所有注册了课程操作系统设计但没有注册数据库系统设计的学生的姓名。所以我写了这个查询。这里学生是第一个表,注册的是第二个表,snum 作为外键。
select s.sname
from student s, enrolled e
where(s.snum=e.snum
AND e.cname="Operating System Design"
AND e.cname!="Database Systems"
);
它只是打印注册操作系统设计的学生的姓名,如果它只是检查第一个条件。
【问题讨论】:
-
您将需要一些比多个 WHERE 条件更复杂的东西。这需要某种形式的子查询或左连接来将
Operating System Design结果的结果与单独的Database Systems结果进行比较