每日一题-75(向公司CEO汇报工作的所有人)

本文介绍了一种使用SQL查询的方法,来找出所有直接或间接向公司CEO汇报工作的员工。通过两次JOIN操作,确保了间接汇报关系不超过三个层级。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题75:

根据下表用 SQL 查询出所有直接或间接向公司 CEO 汇报工作的职工的 employee_id ,由于公司规模较小,经理之间的间接关系不超过 3 个经理;可以以任何顺序返回无重复项的结果。
在这里插入图片描述
其中:employee_id 是上表的主键。这个表中每一行中,employee_id 表示职工的 ID,employee_name 表示职工的名字,manager_id 表示该职工汇报工作的直线经理。这个公司 CEO 是 employee_id = 1 的人。

解题思路:
根据题目的规定经理之间的间接关系不超过3个经理,第一次查询的manager_id等于第二次查询的employee_id,那就做两次连接即可。

select a.employee_id
from Employees a
join Employees b on a.manager_id = b.employee_id
join Employees c on b.manager_id = c.employee_id
where a.employee_id != 1 
    and c.manager_id = 1;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值