我给这个题提交了一个解答 https://leetcode.cn/problems/employees-with-missing-information/
这是我的代码:
with eid as (select employee_id
from Employees),
sid as (select employee_id
from Salaries)
select employee_id
from (select e.employee_id as employee_id
from eid e
where e.employee_id not in
(select * from sid)
union
select s.employee_id as employee_id
from sid s
where s.employee_id not in
(select * from eid)
) t
order by employee_id;
可以发现,not in (select * from sid)
和not in (select * from eid)
这两个子查询都没有加 alias ,但可以通过,如果加了反而不通过
而
from (select e.employee_id as employee_id
from eid e
where e.employee_id not in
(select * from sid)
union
select s.employee_id as employee_id
from sid s
where s.employee_id not in
(select * from eid)
) t
这个子查询则需要加别名(我的命名是 t )
为什么会这样呢?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.