Middle
Můžeš uvést příklad, kdy se používají rekurzivní CTE?
sobes.tech AI
Odpověď od AI
Rekurzivní výrazy tabulek (CTE) se používají pro práci s hierarchickými nebo rekurzivními datovými strukturami, například pro průchod stromem nebo grafem.
Příklad: získání všech podřízených zaměstnanců v organizační struktuře.
WITH RECURSIVE Subordinates AS (
SELECT employee_id, manager_id, name
FROM employees
WHERE employee_id = 1 -- nadřízený, od kterého začínáme
UNION ALL
SELECT e.employee_id, e.manager_id, e.name
FROM employees e
INNER JOIN Subordinates s ON e.manager_id = s.employee_id
)
SELECT * FROM Subordinates;
Tento dotaz rekurzivně shromažďuje všechny zaměstnance podřízené nadřízenému s employee_id = 1.