找出至少有五个直接下属的经理
2025年4月9日小于 1 分钟
找出至少有五个直接下属的经理
需求:找出至少有五个直接下属的经理的信息。
核心
- 找出满足该条件的经理(id)
- 主查询中利用子查询得到的经理id,进而查询信息
- HAVING 用于在数据分组之后对分组结果进行过滤
- IN 与子查询结合使用,从另一个查询中动态获取值。
实现
SELECT
e.name
FROM
Employee e
WHERE
e.id IN (
//子查询==>得到经理id
SELECT
e.managerId
FROM
Employee e
WHERE
e.managerId IS NOT NULL
GROUP BY
e.managerId
HAVING
COUNT(e.id) >= 5
);