1. Uczyć się
  2. /
  3. Courses
  4. /
  5. Hierarchiczne i rekurencyjne zapytania w SQL Server

Connected

Exercise

Ile pokoleń liczy drzewo genealogiczne?

W tym ćwiczeniu przeanalizujesz przykładowe drzewo genealogiczne. Zbiór danych family składa się z trzech kolumn: ID, name oraz ParentID. Twoim zadaniem jest obliczenie liczby pokoleń. W tym celu zlicz wszystkie pokolenia, zaczynając od osoby z ParentID = 101.

Musisz obliczyć wartość LEVEL rekurencji, która reprezentuje bieżący poziom w hierarchii pokoleń. Następnie zlicz liczbę poziomów za pomocą funkcji COUNT(). Pamiętaj, że liczba poziomów odpowiada liczbie pokoleń – na przykład wynik 100 oznacza, że znaleziono 100 pokoleń.

Instrukcje

100 XP
  • Zainicjuj rekurencję, ustawiając ParentID na 101.
  • Ustaw LEVEL na bieżący krok rekurencji.
  • Połącz element bazowy z CTE, używając JOIN po ID rodzica i dziecka.
  • Zlicz liczbę pokoleń za pomocą COUNT().