SQL Server'da Hiyerarşik ve Özyinelemeli Sorgular
Jasmin Ludolf
Content Developer
familyTree şu şekilde tanımlanır:
ID’siName’iparentID ebeveynin kimliğiHiyerarşiyi tanımlayan öğeler:
IDparentID
Özyinelemeli CTE’ler için şu ilkeleri anımsayın:
Çalışma ilkeleri:
Nesil sayısını alın
LEVEL tanımlayın
-- Anchor member
0 as LEVEL
-- Recursive member
LEVEL + 1
Nesilleri bulmak için LEVEL sayısını sayın COUNT(LEVEL)
Nesiller:
100
Tüm olası ebeveynleri tek bir alanda alın
-- 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 |
+---------------------------------------------+
SQL Server'da Hiyerarşik ve Özyinelemeli Sorgular