Hierarchiczne i rekurencyjne zapytania w SQL Server
Jasmin Ludolf
Content Developer
Rekurencja to użycie procedury, podprogramu, funkcji lub algorytmu, który wywołuje sam siebie jeden lub więcej razy, aż do spełnienia określonego warunku

Drzewo genealogiczne – Znajdź wszystkich ojców z ostatnich 5 pokoleń

Zalety:
Wady:
Definicja matematyczna
Suma kolejnych liczb jest zdefiniowana rekurencyjnie w następujący sposób:
number = 1
for iteration = 1
number = number + (iteration - 1)
for iteration > 1
Suma liczb do 5 wynosi:
1+2+3+4+5 = 15
WITH calculate_SumOfNumber AS ( -- Initial Query SELECT 1 AS iteration, 1 AS SumOfNumberUNION ALL -- Recursive Part SELECT iteration + 1, SumOfNumber + (iteration + 1) FROM calculate_SumOfNumberWHERE iteration < 6 )SELECT SumOfNumber FROM calculate_SumOfNumber
Hierarchiczne i rekurencyjne zapytania w SQL Server