Sobes.tech
Middle

Pouvez-vous donner un exemple où les CTE récursifs sont utilisés?

sobes.tech IA

Réponse de l'IA

Les expressions de table communes récursives (CTE) sont utilisées pour travailler avec des structures de données hiérarchiques ou récursives, par exemple pour parcourir un arbre ou un graphe.

Exemple : obtenir tous les subordonnés d’un employé dans la structure organisationnelle.

WITH RECURSIVE Subordinates AS (
    SELECT employee_id, manager_id, name
    FROM employees
    WHERE employee_id = 1  -- le supérieur hiérarchique de départ
    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;

Cette requête rassemble récursivement tous les employés subordonnés au supérieur avec employee_id = 1.