Middle
Можеш ли да дадеш пример кога се използват рекурсивните CTE?
sobes.tech AI
Отговор от AI
Рекурсивните изрази на таблици (CTE) се използват за работа с йерархични или рекурсивни структури от данни, например за обхождане на дърво или граф.
Пример: получаване на всички подчинени служители в организационната структура.
WITH RECURSIVE Subordinates AS (
SELECT employee_id, manager_id, name
FROM employees
WHERE employee_id = 1 -- началник, от който започваме
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;
Тази заявка рекурсивно събира всички служители, подчинени на началника с employee_id = 1.