gpt4 book ai didi

SQL 查询以获取主管层次结构的列表。员工 --> 主管 --> 主管

转载 作者:行者123 更新时间:2023-11-29 13:45:04 28 4
gpt4 key购买 nike

enter image description here

我有两个表 Employee 和 Department 此图像显示每个员工的经理。我想编写一个 SQL 查询,为我提供所有主管(经理、经理的经理......)的列表。

我只想要一个列,在给定特定员工时显示主管列表。

例如如果我给员工 id = 202 那么我应该收到 200,130

 |supervisor |   
+-----------+
| 200 |
| 130 |

我有这个问题

WITH emp_dept as(
SELECT employee_id,manager_id
FROM employee,department
WHERE employee.dept_id= department.dept_id
)

WITH recursive p as (
select e1.employee_id, e1.manager_id
from emp_dept e1
where employee_id = 202

union all

select e2.employee_id , e2.manager_id
from p
join emp_dept e2 ON e2.employee_id = p.manager_id

)
select manager_id
from p

`

我无法使用它。我正在使用 pgadmin4。

如果有人能帮我解决这个问题,我将不胜感激

最佳答案

我认为您可以对 Oracle 使用“分层查询”并试试这个:

select manager_id supervisor 
from employee
start with employee_id = 202
connect by nocycle employee_id = prior manager_id;

关于SQL 查询以获取主管层次结构的列表。员工 --> 主管 --> 主管,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49962130/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com