问题:
这是我在问题 1 中的查询,请帮助更正并请帮助我在问题 2,3 中编写查询:
Select *,
annualreviews.reviewdate
From employees
Join annualreviews
On employees.ID = annualreviews.ID
Where reviewdate is null;
您的错误 #1:您正在寻找没有日期的评论,而您应该寻找缺失的评论。[NOT] IN
我们通常使用or来检查存在性[NOT] EXISTS
,而不是使用连接。
您的错误 #2:您使用错误的 ID 加入。评论 ID 不是员工 ID,因此:employees.ID = annualreviews.ID
应该敲响警钟。
您正在寻找的简单查询:
select *
from employees
where id not in (select empid from annualreviews)
order by hiredate;
同样的事情NOT EXISTS
:
select *
from employees e
where not exists (select null from annualreviews r where r.empid = e.id)
order by hiredate;
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句