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

SQL自连接查询结果不符求助:如何正确关联员工与经理?

解决SQL自连接查询员工与经理姓名的问题

原查询的核心问题是连接条件逻辑颠倒,并且使用普通JOIN会丢失无经理的员工记录,调整方式如下:

正确查询语句

SELECT
  uno.name AS employee,
  dos.name AS manager
FROM
    `dataset.workers` AS uno
LEFT JOIN `dataset.workers` AS dos 
  ON uno.manager_id = dos.id 

逻辑说明

  • 把uno.id = dos.manager_id改为uno.manager_id = dos.id:员工表(uno)的manager_id对应经理表(dos)的id,这才是正确的关联关系,能匹配到员工对应的经理。
  • 使用LEFT JOIN而非普通JOIN:确保即使员工没有经理(比如Joe的manager_id为NULL),这条记录也会被保留,经理字段显示NULL。

执行结果

employeemanager
MikeJoe
KateJoe
JoeNULL

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 16:51:27