查询一个表的comapre标量值以及同一个表

时间:2015-11-03 06:08:06

标签: sql-server

for ex

empid  empname  mngrid
1         A       3
2         B       3
3         C       1

我想要输出tbl,如下所示

empname mngrname
A          C
B          C
C          A  

1 个答案:

答案 0 :(得分:0)

您可以使用LEFT JOIN,如下所示:

SELECT A.empname, B.empname AS mngrname
FROM Your_Table A
LEFT JOIN You_Table B
ON A.mngrid = B.empid

其他情况下,您可以使用OUTER APPLY,如下所示:

SELECT A.empname, B.mngrname
FROM Your_Table A
OUTER APPLY (SELECT empname AS mngrname You_Table WHERE empid = A.mngrid) B