Sql Server 自加入员工经理关系
Posted
技术标签:
【中文标题】Sql Server 自加入员工经理关系【英文标题】:Sql Server self join for employee manager relationship 【发布时间】:2021-03-16 10:51:58 【问题描述】:EmpId EmpName ManagerId
1 Ramesh NULL
2 Khiln 1
3 Khaushilk 1
4 Komal 2
5 Muffy 2
6 Jhon 3
7 Richa 3
8 Riya 4
我的数据
empname manager1
1 Ramesh NULL
2 Khiln Ramesh
3 Khaushilk Ramesh
4 Komal Khiln
5 Muffy Khiln
6 Jhon Khaushilk
7 Richa Khaushilk
8 Riya Komal
现在我想要 2 级经理的姓名,例如 ramesh khiln khaushik 的经理... 我是怎么做到的
【问题讨论】:
【参考方案1】:这确实是一个自加入:
select e.empname, m.empname as managername
from employees e
left join employees m on m.empid = e.managerid
【讨论】:
【参考方案2】:以下子查询将为您提供所需的结果。您不需要使用自联接。
select emempid, e.empname, (select m.empname from employees m where m.empid = e.managerid) as managername
from employees e
【讨论】:
以上是关于Sql Server 自加入员工经理关系的主要内容,如果未能解决你的问题,请参考以下文章