3

我想在 Presto 中使用 CTE 编写一个递归查询来查找 Employee Hierarchy。Presto 支持递归查询吗?当我将简单递归编写为

with cte as(select 1 n union all select cte.n+1 from cte where n<50) select * from cte

它给出的错误是

运行查询时出错:第 3:32 行:表 cte 不存在

4

2 回答 2

6

当前答案

Trino支持递归查询,但Presto 的PrestoDB实现不支持。

旧答案

Presto 语法支持WITH RECURSIVE name AS ...,但没有实现递归 WITH 查询

这被跟踪为功能请求: https ://github.com/trinodb/trino/issues/1122

于 2019-03-30T17:19:25.810 回答
0
WITH RECURSIVE cte(n) AS (
    SELECT 1
    UNION ALL
    SELECT n + 1 FROM cte WHERE n < 50)
SELECT * from cte

错误 :Recursion depth limit exceeded (10)

调整max_recursion_depth

于 2022-02-14T03:07:31.320 回答