gpt4 book ai didi

sql - 有没有数据库支持相互递归查询

转载 作者:搜寻专家 更新时间:2023-10-30 20:54:21 24 4
gpt4 key购买 nike

我试过sql server,db2,postgreSQL和Mysql,有的支持递归的基本功能,没有一个像这样支持相互递归:

WITH RECURSIVE
x (id) AS (SELECT 1 UNION ALL SELECT id+1 FROM y WHERE id < 5),
y (id) AS (SELECT 1 UNION ALL SELECT id+1 FROM x WHERE id < 5)
SELECT * FROM x;

最佳答案

有可能:只使用second cte(y (id))作为子查询

WITH 
x (id) AS (SELECT 1
UNION ALL
SELECT y.id+1 FROM
(SELECT 1 id UNION ALL SELECT id+1 FROM x WHERE id < 5) y
WHERE y.id < 5)
SELECT * FROM x;

此方法适用于您提到的大多数 RDBMS。但是这样的查询可能会陷入无限循环

关于sql - 有没有数据库支持相互递归查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29589377/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com