1731. 每位经理的下属员工数量 - 力扣(LeetCode)

可以使用 SQL 来解决这个问题,通过自连接 Employees 表来统计每位经理的下属数量及其平均年龄。下面是完整的 SQL 解决方案:

✅ SQL 查询:

SELECT 
    e1.employee_id,
    e1.name,
    COUNT(e2.employee_id) AS reports_count,
    ROUND(AVG(e2.age)) AS average_age
FROM 
    Employees e1
JOIN 
    Employees e2
ON 
    e1.employee_id = e2.reports_to
GROUP BY 
    e1.employee_id, e1.name
ORDER BY 
    e1.employee_id;

🔍 说明:

  • e1 是经理(即被别人 reports_to 的员工)。

  • e2 是直接汇报给 e1 的员工。

  • 使用 COUNT(e2.employee_id) 来统计下属数量。

  • 使用 AVG(e2.age) 并结合 ROUND() 来四舍五入平均年龄。

  • 最后根据 employee_id 进行排序。

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐