Requêtes hiérarchiques et récursives dans SQL Server
Jasmin Ludolf
Content Developer
Le familyTree est décrit par :
ID de la personneName de la personneparentID : l'ID du parentÉléments décrivant la hiérarchie :
IDparentID
Retenez ces principes pour les CTE récursives :
Règles de fonctionnement :
Obtenir le nombre de générations
Définir le LEVEL
-- Anchor member
0 as LEVEL
-- Recursive member
LEVEL + 1
Compter le nombre de niveaux pour obtenir les générations : COUNT(LEVEL)
Generations:
100
Rassembler tous les parents possibles dans un champ
-- 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 |
+---------------------------------------------+
Requêtes hiérarchiques et récursives dans SQL Server