更新时间:2025-06-04 GMT+08:00

U0100088:GaussDB 不支持层次查询

描述

Oracle支持层次查询语法,GaussDB 分布式不支持改语法。

数据库类型与版本

  • 源库类型与版本:UGO 支持的 Oracle 版本。
  • 目标库类型与版本:GaussDB V2.0-8.1 及之前的版本。

语法示例

SELECT MAX(stru_grade)   FROM ctp_branch  START WITH id = 0 CONNECT BY PRIOR parent_id = id;

改造建议

修改“层次查询”转换配置项。选择转换层次查询选项。

转换为

 WITH RECURSIVE dsc_hircl_q AS
(SELECT parent_id,
 stru_grade
FROM ctp_branch
WHERE id = 0
UNION ALL
SELECT dsc_ta1.parent_id,
 dsc_ta1.stru_grade 
FROM dsc_hircl_q
INNER JOIN ctp_branch dsc_ta1
ON dsc_hircl_q.parent_id = dsc_ta1.id)
SELECT MAX(stru_grade)   FROM dsc_hircl_q  ;