в моей SQL таблицы я следующие данныеSQL-запрос, чтобы получить multihierarchy элементы
ID Level Description Code MasterID
1 1 Cars AD0 NULL
2 1 Trucks JF1 NULL
3 1 Items YU2 NULL
4 2 New Cars AS3 1
5 2 Used Cars TG4 1
6 2 Car parts UJ5 1
7 2 New trucks OL6 2
8 2 Used trucks PL7 2
9 2 Truck parts KJL8 2
10 2 Factory stuff UY9 3
11 2 Custom stuff RT10 3
12 3 Toyota 6YH11 4
13 3 BMW 9OKH12 4
14 3 VW 13 5
15 3 Tiers Type I J14 6
16 3 Tiers Type II J15 6
17 3 Tiers Type III ADS16 9
18 3 Seats SA17 6
19 3 Doors UU18 6
20 3 Lights 9OL19 6
21 4 Left light GH20 20
22 4 Right light H21 20
23 4 Left door JHJ22 19
24 4 Michelin UY23 16
25 4 Vredestein GTF24 17
26 4 Dunlop 25 15
Мое достижение, чтобы получить все иерархические данные для каждого отдельного элемента. Для Exmaple, то outpu должен выглядеть следующим образом
ID Level Description Code MasterId1 Description1 MasterId2 Description2 MasterId3 Description3
24 4 Michelin UY23 16 Tiers Type II 6 Car Parts 1 Cars
.
.
19 3 Doors UU18 6 Car Parts 1 Cars NULL NULL
.
.
10 2 Factory Stuff UY9 3 Items NULL NULL NULL NULL
.
.
3 1 Items NULL NULL NULL NULL NULL NULL NULL
.
.
Если кто-то может помочь или дать совет, как добиться этого?
Можете ли вы показать нам, что вы делали до сих пор? – Marusyk
В общем случае [CTE выполнит трюк в этом сценарии] (http://stackoverflow.com/questions/14274942/sql-server-cte-and-recursion-example). Я предлагаю вам начать с этого, а также взглянуть на «UNPIVOT», затем на динамический SQL, а затем подумать о том, как объединить их все вместе. Но все это зависит от используемой СУБД. –
есть ли максимальное количество уровней? – JamieD77