You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL查询:按部门ID排序查询管辖全部门的经理姓名及部门名称

问题说明

你的现有SQL存在两处逻辑错误,导致返回结果远多于预期:

  • 多余的员工表自连接:你用mgr.manager_id = e.employee_id关联两张员工表,实际匹配的是所有有上级的普通员工,而非管辖整个部门的经理,相当于把全公司所有非最高级员工都纳入了查询范围
  • 不必要的GROUP BY分组:部门与部门经理本身是一一对应关系,不存在需要分组去重的场景
正确查询代码

管辖整个部门的经理ID直接存储在departments表的manager_id字段中,直接关联该字段与员工表即可:

SELECT 
    e.first_name, e.last_name, d.department_name
FROM 
    departments d
INNER JOIN 
    employees e ON d.manager_id = e.employee_id
ORDER BY 
    d.dept_id;
逻辑校验
  • 以部门表为基础,每条记录对应一个独立部门,天然保证不会出现重复部门
  • 关联员工表后直接获取对应部门经理的姓名信息
  • 最终按部门ID排序,完全匹配需求

内容的提问来源于stack exchange,提问作者user8964654

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 17:21:02