向公司CEO汇报工作的所有人
题目分析:题目要求查出直接或者间接向CEO汇报的人,而且题目降低了难度,这种间接的关系肯定不会超过三个,那这就好办了,直接inner join 两次连接三张表筛选出每张表中manager_id=1的最开始的那张表的employee_id即可.注意,要排除CEO自己。
select E1.employee_id from (select * from Employees where employee_id != 1) E1 inner join Employees E2 on E1.manager_id = E2.employee_id inner join Employees E3
on E2.manager_id = E3.employee_id where E1.manager_id = 1 or E2.manager_id = 1 or E3.manager_id = 1 ;
提交结果如下: