Mysql-递归查询

2024-08-24 08:50:03 浏览数 (2)

mysql版本:8.0.32

对于 MySQL 8.0 及以上版本,递归查询可以通过 WITH RECURSIVE 语法实现。

代码语言:javascript复制
WITH RECURSIVE subordinates AS (
    SELECT id, name, manager_id
    FROM employees
    WHERE id = 1  -- Alice 的 ID

    UNION ALL

    SELECT e.id, e.name, e.manager_id
    FROM employees e
    INNER JOIN subordinates s ON e.manager_id = s.id
)
SELECT * FROM subordinates;

对于 MySQL 5.x 版本,可使用存储过程递归调用实现。

0 人点赞