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

如何编写SQL生成从员工ID100开始的层级员工及上级姓名、职级树遍历列表

问题原因

你现有SQL的核心问题如下:

  • 输出的「Manager Name」字段直接取了e.manager_id,这个字段是经理的员工编号,并非经理的姓氏,和你需要的直属经理姓氏的需求不符。

修正后的SQL语句

SELECT 
  LEVEL AS "POSITION",
  e.last_name AS "员工姓氏",
  PRIOR e.last_name AS "Manager Name"
FROM employees e 
START WITH e.employee_id = 100 
CONNECT BY PRIOR e.employee_id = e.manager_id 
ORDER SIBLINGS BY e.last_name;

逻辑说明

  • PRIOR e.last_name直接取层级查询中当前节点的父节点(即直属上级)的姓氏,正好匹配直属经理姓氏的需求
  • 最高级管理者(员工ID100)没有上级,对应的经理姓名字段会返回空值,符合层级逻辑
  • 保留了原有的START WITH和ORDER SIBLINGS逻辑,满足从100号员工开始统计、同职级按姓氏排序的要求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 14:15:07