Я пытаюсь написать запрос для получения дочерних элементов под родительским идентификатором из таблицы #Temp
. Вы можете найти в таблице ниже #Temp
Рекурсивный SQL-запрос для получения дочерних элементов под родителями - SQL Server 2008
Примечание: значение Родитель NULL
то соответствующее значение ребенка является L1 и нужно найти уровни от L1 до L5.
child | Parent
c1 p1
p1 NULL
c2 p2
p2 p3
p4 p3
p3 NULL
Я ищу ниже выхода
L1 | L2 | L3 | L4 | L5
p1 c1 NULL NULL NULL
p3 p2 c2 NULL NULL
p3 p4 NULL NULL NULL
Я попытался с этим запросом
SELECT L1.child 'L1',
L2.child 'L2',
L3.child 'L3',
L4.child 'L4',
L5.child 'L5'
FROM #temp L1
INNER JOIN #temp L2
ON L2.parent = L1.child
INNER JOIN #temp L3
ON L3.parent = L2.child
INNER JOIN #temp L4
ON L4.parent = L3.child
INNER JOIN #temp L5
ON L5.parent = L4.child
WHERE L1.parent IS NULL
Но я не получаю ожидаемый результат. Пожалуйста посоветуй. Заранее спасибо!
, что вывод, который вы получаете. вы можете вставить его здесь. – Aditya