对于文档,我知道connect by
可以与prior
一起用于分层查询。但我常常看到它用于生成数字:
SQL> select level from dual connect by level < 10;
LEVEL
----------
1
2
3
4
5
6
7
8
9
9 rows selected
SQL>
它在这里如何运作?我的意思是它如何生成1,然后是2,依此类推。我在这里看不到层次结构,connect by
未与prior
一起使用。这让我很困惑。
答案 0 :(得分:1)
查询执行线性递归调用。
Level是由递归生成的伪列,它告诉当前迭代的递归深度。 connect by子句不需要引用previous,它就像任何其他的条件告诉'如果这行的级别小于10,将它与结果集联合'