안녕하세요 


제가 하고자 하는것은 트리구조를 이용하여 조회 화면을 만드려고 합니다. 

트리 컴포넌트를 쓰면 모든것이 해결되나 고객이  액셀 다운로드를 원하여 그리드에 표현을 해줘야 하는 상황입니다. 



데이터도 테스트 데이터고 추후 동적으로 피벗 되는것을 튜닝할 예정입니다. 




sql1.png



with 문을 써서 위에 보시는것 처럼 트리구조를 만드는것에 대해서는 

문제 없이 해결하였습니다. 


제가 원하는 구조는  ( 위데이터중 'KGL-FF21-00001' 품목을 대상으로 작성 하였습니다.)


 Pitem


description


depth0


depth1 


depth2

 

depth3 


 KGL-FF21-00001

 KGL-FF21 Globe Valve

 KGL-FF21-00001

 951410305Z13

 

 


 KGL-FF21-00001

 KGL-FF21 Globe Valve

 KGL-FF21-00001

 951410101Z03

 M1231200001

 


 KGL-FF21-00001


 KGL-FF21 Globe Valve

 KGL-FF21-00001

 951410302Z03

 





이런식으로 한 품목에  묶여있는 내역들을 한번에 뽑고싶은건데요 



SELECT pitem

,      [0]

,      [1]

,      [2]

,      [3]

,      description

FROM (     

SELECT depth, item , description    ,pItem

FROM ItemTree WITH (NOLOCK) 

) AS A

 PIVOT (     MAX(item)     FOR depth IN ([0], [1], [2],[3]) ) A



이런식으로 뎁쓰를 가지고  피벗을 돌리면 



sql2.png

이렇게 나오게됩니다. 


여기서 null 처리 및  같은 데이터를 합치는 작업이 필요한데 

도움을 얻고자 글을 작성하게 됐습니다. 



처음쓰는 글이라  작성 방법이 어색하네요. 

답변 기다리고있겠습니다.