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

如何编写SQL通过同表ID关联查询员工姓名及其直属上级姓名

SQL查询解法

这个需求属于典型的表自关联查询场景,使用左连接即可实现保留无上级员工的记录需求,具体实现如下:

前提说明

假设你的员工信息表名为 employee,如果实际使用的表名不同,替换SQL中的表名即可。

具体SQL语句

SELECT 
  e.Name AS 'Name',
  s.Name AS 'Supervisor'
FROM employee e
LEFT JOIN employee s 
  ON e.SupervisorID = s.ID;

逻辑解释

  • 给同一张员工表设置两个别名:e 代表员工维度,s 代表上级维度
  • 使用 LEFT JOIN 左连接关联两张逻辑表,关联条件为员工的直属上级ID等于上级记录的ID
  • 左连接特性会保留左侧e表的所有记录,当没有匹配到上级记录时,s.Name 字段会自动返回NULL,完全符合预期输出要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 12:24:05