Cześć wszystkim zgłębiam temat rekurencji w bazach danych i mam takie dwie tabele:
O ile poziomy izolacji jestem w stanie sobie wypisać o tyle nie wiem jak zrobić ścieżke jak na przykładzie:
.
Stoję na tym etapie:
WITH RECURSIVE
Podwladni AS(
SELECT
CONCAT(Imie,' ',Nazwisko) AS Pracownik,
0 AS Poziom,
idpracownika
FROM
Pracownicy
WHERE
IdPracownika = 1
UNION ALL
SELECT
CONCAT(Pr.Imie,' ',Pr.Nazwisko) AS Pracownik,
Po.Poziom +1 AS Poziom,
Pr.idpracownika
FROM
Pracownicy Pr
JOIN Podwladni Po ON
Pr.IdPrzelozonego = Po.idpracownika
WHERE
Pr.idPrzelozonego != Pr.IdPracownika
)
SELECT
*
FROM
Podwladni