は、私は、以下の表に持って従業員マネージャーレポート - SQL Serverの
empid empname managerID
1 A NULL
2 B 1
3 C 1
4 D 2
私は何を持っていることは、従業員がに報告を示します報告書を作成することです
Declare @t table(empid int, empname varchar(20), managerID int)
insert into @t
select 1,'A',null union all
select 2,'B',1 union all
select 3,'C',1 union all
select 4,'D',2
下のようDDLはありますどのマネージャー。
私は
select EmpName = e.empname, ManagerName = m.empname
from @t e
left join
@t m
on e.managerID = m.empid
を使用してそれをsovedしており、所望の出力が
EmpName ManagerName
A NULL
B A
C A
D B
そうすることの他の方法は何ですかいますか
正しい結果ですが、通常は可能な限りselectでサブクエリに参加して避けてください。 – niktrs
@niktrs、私は同意します。私はOPの目的のための最善の解決策についての私の意見を書いた。 –