如何从oracle中的DUAL获得以下输出?

Vik*_*ngh 1 sql oracle

1         L            R

1         1            1 
1         1            2
1         1            3
1         2            1
1         2            2
1         2            3
1         3            1
1         3            2
1         3            3
Run Code Online (Sandbox Code Playgroud)

使用此查询但无法获取L列

Select 1,level R
from DUAL
Connect by level <=3
Run Code Online (Sandbox Code Playgroud)

Lal*_*r B 5

您可以在必须生成的行生成器查询中执行笛卡尔连接.因此,笛卡尔积将产生总量.3 rows9 rows

例如,

SQL> WITH DATA AS
  2    ( SELECT LEVEL rn FROM dual CONNECT BY LEVEL <=3
  3    )
  4  SELECT 1, A.rn L, b.rn R FROM DATA A, DATA b
  5  /

         1          L          R
---------- ---------- ----------
         1          1          1
         1          1          2
         1          1          3
         1          2          1
         1          2          2
         1          2          3
         1          3          1
         1          3          2
         1          3          3

9 rows selected.

SQL>
Run Code Online (Sandbox Code Playgroud)