如果这看起来太简单,我很抱歉。我似乎无法解决它。我试图得到从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
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 ;
1条答案
按热度按时间hkmswyz61#
您应该了解递归公用表表达式在Db2中的工作原理,以了解您做错了什么...
试试看: