2017-09-12 2 views
-1

사용자라는 테이블이 있습니다. 열에는 ID, 코드, ParentID가 있습니다. ParentID는 ID 열의 포인터이며 null 일 수 있습니다. 예 :null이 아닌 경우 ParentID로 코드를 선택하십시오.

ID Code ParentId 
1 Poland null 
2 Germany 1 

다음 결과를 얻고 싶습니다. null이 아니고 코드로 Id가있는 경우 ParentId입니다. ...이 자체가 조인

ParentId Id 
null, poland 
Germany, Poland 

답변

1

폴란드는 독일의 부모가 아닌 당신의 예에 따라 다른 방법으로 주위 :

예 (위의 예에 accordong). 따라서 예상 한 결과가 잘못되었습니다.

declare @table table (ID int, Code varchar(64), ParentId int) 
insert into @table 
values 
(1,'Poland',null), 
(2,'Germany',1) 

select 
    ParentId = t2.Code 
    ,ID = t.Code 
from 
    @table t 
    left join 
    @table t2 on 
    t2.ID = t.ParentId 
+0

대단히 감사합니다. – tylkonachwile

+0

@ tylkonachwile – scsimon

관련 문제