如何在sqlserver中显示Employee的主管和HOD名称

时间:2013-05-29 12:02:04

标签: sql

我有2张桌子。一个是EmployeeMaster,其中有两列员工姓名和员工编号,还有一个表UserDetails,其中存储了员工编号,他的主管编号和他的HOD员工编号。

现在我需要检索员工编号以及相应的主管和HOD名称

EmployeeMaster表

EmployeeNo    EmployeeName  
1              A    
2              b    
3              c    
4              D    
5              E    

UserDetails表

EmployeeNo  SupervisorNo HODNo  
1             2            3

输出需要如下所示

EmplooyeeName   SupervisorName       HodName
  A               B                    C

1 个答案:

答案 0 :(得分:0)

试试这个:

SELECT E.EmployeeName as 'EmployeeName', S.EmployeeName as 'SupervisorName',
H.EmployeeName as 'HodName'
FROM EmployeeMaster E
JOIN UserDetails U ON E.EmployeeNo = U.EmployeeNo
JOIN EmployeeMaster S ON U.SupervisorNo = S.EmployeeNo
JOIN EmployeeMaster H ON U.HODNo = H.EmployeeNo

告诉我你是否遇到任何问题。这是SqlFiddle Demo