Middle
Môžeš uviesť príklad, kedy sa používajú rekurzívne CTE?
sobes.tech AI
Odpoveď od AI
Rekurzívne výrazy tabuliek (CTE) sa používajú na prácu s hierarchickými alebo rekurzívnymi štruktúrami údajov, napríklad na prechádzanie stromom alebo grafom.
Príklad: získanie všetkých podriadených zamestnancov v organizačnej štruktúre.
WITH RECURSIVE Subordinates AS (
SELECT employee_id, manager_id, name
FROM employees
WHERE employee_id = 1 -- nadriadený, od ktorého začíname
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;
Táto otázka rekurzívne zhromažďuje všetkých zamestnancov, ktorí sú podriadení nadriadenému s employee_id = 1.