不了解CTE的先查看这篇文章–公用表达式(CTE)
递归CTE的语法:
WITH RECURSIVE cte_name AS (
initial_query
UNION ALL
recursive_query
)
SELECT * FROM cte_name;
1、递归CTE的主要组成:
- 形成CTE结构的基本结果集的初始查询(initial_query),初始查询部分被称为锚成员。
- 递归查询部分是引用CTE名称的查询,因此称为递归成员。递归成员由一个UNION ALL或UNION DISTINCT运算符与锚成员相连。
- 终止条件是当递归成员没有返回任何行时,确保递归停止。
2、递归CTE的执行顺序如下:
- 首先,将成员分为两个:锚点和递归成员。
- 接下来&#