MySQL中可以通过使用WITH RECURSIVE语句来编写递归查询。这种类型的查询可以在一个表的列中包含自引用值时使用,以便遍历和检索相关的数据。
下面是一个示例查询,假设有一个employees表,其中包含每个雇员的ID和经理ID。查询将返回给定雇员的所有下属:
WITH RECURSIVE subordinates AS (
SELECT id, name, manager_id
FROM employees
WHERE id = {employee_id}
UNION
SELECT e.id, e.name, e.manager_id
FROM e