0
я следующее требование,иерархии в SQL Server - несколько уровней
Input
ID Parent_ID
------------
1 0
2 0
3 10
4 0
5 3
6 20
7 3
8 21
9 3
10 0
20 0
21 0
- Когда я использую
@ID = 1
результат должен быть 1. - Когда я использую
@ID = 6
результат должно быть 20. - Когда я использую
@ID = 5
или 7, 9, результат должен быть равен 10, потому что 5 -> 3 (Parent_ID -> Str_ID) -> 10 (Parent_ID -> Str_I D) -> 0 (остановка 0 в PARENT_ID), так что результат 10.
Так что моя задача ищет ID, пока я найду 0 в Parent_ID
.
Выход:
@ID Result
----------
1 1
2 2
3 10
4 4
5 10
6 20
7 10
8 21
9 10
10 10
20 20
21 21