Hierarkiska och rekursiva frågor i SQL Server
Jasmin Ludolf
Content Developer
familyTree beskrivs av:
ID för personenName för personenparentID förälderns IDElementen som beskriver hierarkin:
IDparentID
Kom ihåg följande principer för rekursiva CTE:er:
Kom ihåg följande arbetsprinciper:
Hämta antalet generationer
Definiera LEVEL
-- Anchor member
0 as LEVEL
-- Recursive member
LEVEL + 1
Räkna antalet LEVELS för att få generationer COUNT(LEVEL)
Generations:
100
Hämta alla möjliga föräldrar i ett fält
-- Anchor member
CAST(ID AS VARCHAR(MAX)) as Parent
-- Recursive member
Parent + ' -> ' + CAST(parentID AS VARCHAR(MAX))
+---------------------------------------------+
| Name | Parent |
|-----------------|---------------------------|
|Dominik Egarter | 100 -> 101 -> 102 ->103 |
+---------------------------------------------+
Hierarkiska och rekursiva frågor i SQL Server