DB2获取一个范围内数字列表,

34gzjxbg  于 2022-11-07  发布在  DB2
关注(0)|答案(1)|浏览(168)

如果这看起来太简单,我很抱歉。我似乎无法解决它。
我试图得到从20000001到21000000的数字,但它只给了我一个值。如果我把数字改为10和0,我得到的数字是从1到10。

WITH A(Num) AS
(
    VALUES (1)
    UNION ALL
    SELECT
        NUM+1
    FROM A
    WHERE Num <= 21000000 and Num > 20000000
)
select Num from A
hkmswyz6

hkmswyz61#

您应该了解递归公用表表达式在Db2中的工作原理,以了解您做错了什么...
试试看:

WITH A(Num) AS
(
    VALUES 20000001
        UNION ALL
    SELECT NUM + 1
    FROM A
    WHERE Num < 21000000
)
select Num 
from A
--fetch first 10 rows only
;

相关问题