注册

在dm8的查询里,执行WITH RECURSIVE 语句报错

waliucun 2024/04/10 1698 8

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:--03134283914-20220909-169171-20009 Pack1
【操作系统】:Windows 10 家庭中文版
【CPU】:11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz 2.80 GHz
【问题描述】*:在dm8的查询里,执行WITH RECURSIVE 语句总是提示语法错误,具体如下:
CREATE TABLE "QMBPM"."TREE"
(
"ID" INTEGER,
"PARENT_ID" INTEGER,
"AMOUNT" DECIMAL(22,6),
"CODE" VARCHAR(50)) STORAGE(ON "TS_ERPDB", CLUSTERBTR) ;

insert into tree
values
(1,null,0,'A'),
(2,1,0,'B'),
(3,1,50,'C'),
(4,2,10,'D'),
(5,2,20,'E')

WITH RECURSIVE CTE AS (
-- 末级节点C、D、E的金额汇总
SELECT ID,PARENT_ID,AMOUNT
FROM TREE
WHERE AMOUNT > 0
UNION ALL
-- 逐级向上汇总金额
SELECT T.ID, T.PARENT_ID, SUM(CTE.AMOUNT) AS AMOUNT
FROM TREE T
INNER JOIN CTE ON T.ID = CTE.PARENT_ID
GROUP BY T.ID, T.PARENT_ID
)
-- 查询最终结果
SELECT * FROM CTE;

执行失败(语句1)
第 1 行, 第 15 列[cte]附近出现错误[-2007]:
语法分析出错

1条语句执行失败

回答 0
暂无回答
扫一扫
联系客服