相关疑难解决方法(0)

Postgres中的NOCYCLE

我有一个带有NOCYCLE子句的Oracle查询,我必须将其翻译成Postgres:

SELECT FG_ID,CONNECT_BY_ROOT FG_ID as Parent_ID  
FROM FG t
START WITH t.Parent_filter_group_id is null 
CONNECT BY NOCYCLE PRIOR t.FILTER_GROUP_ID = t.PARENT_FILTER_GROUP_ID 
Run Code Online (Sandbox Code Playgroud)

我已经在postgres中的connect_by_root等效问题和答案的帮助下转换了这个

with recursive fg_tree as (
select FG_ID,
       FG_ID as fg
from  FG
where Parent_filter_group_id is null 

union all 
select c.FG_ID,
p.fg
from FG c join fg_tree p on p.FG_ID = PARENT_FILTER_GROUP_ID
)
select * from fg_tree
order by FG_ID
Run Code Online (Sandbox Code Playgroud)

但是在这里没有子句,NOCYCLE如果父亲也是其中一个孩子,那么这个查询将返回错误.

sql oracle postgresql connect-by

1
推荐指数
1
解决办法
1107
查看次数

标签 统计

connect-by ×1

oracle ×1

postgresql ×1

sql ×1