mysql WITH recursive
时间: 2023-08-19 15:13:14 浏览: 112
recursive sql.txt
回答: MySQL中的WITH RECURSIVE语法用于执行递归查询。它的语法是:WITH recursive 表名 AS ( 初始语句(非递归部分) UNION ALL 递归部分语句 ) [ SELECT| INSERT | UPDATE | DELETE]。[1]递归查询的SELECT部分不能包含聚合函数(如SUM())、窗口函数、GROUP BY、ORDER BY和DISTINCT等结构。[2]递归查询可以通过限制递归次数或时间来控制。递归查询的结果以表格的形式呈现,例如:[3]其中n是序号,fib_n是斐波那契数列的第n项,next_fib_n是斐波那契数列的下一项。UNION ALL和UNION DISTINCT用于分隔非递归部分和递归部分,前者将所有行都加入到最后的表中,后者消除重复的行。递归查询中的第二个SELECT语句不能使用LIMIT来控制递归次数。[3]
阅读全文