4

以下のようなo/pが必要です。

1,1
2,1
2,2
3,1
3,2
3,3
4,1
4,2
4,3
4,4
... and so on.

以下のようにクエリを書いてみました。しかし、エラーをスローします。SIngle行サブクエリは複数の行を返します。

with test1 as(
SELECT LEVEL n
      FROM DUAL
CONNECT BY LEVEL <59)
select n,(
SELECT LEVEL n
      FROM DUAL
CONNECT BY LEVEL <n) from test1

同じことを解決するためにあなたの助けに感謝します。

4

1 に答える 1

2

目的の結果を得る方法の 1 つを次に示します。

SQL> with t1(col) as(
  2    select level
  3      from dual
  4     connect by level <= 5
  5  )
  6  select a.col
  7       , b.col
  8    from t1 a
  9    join t1 b
 10      on a.col >= b.col
 11  ;

       COL        COL
---------- ----------
         1          1
         2          1
         2          2
         3          1
         3          2
         3          3
         4          1
         4          2
         4          3
         4          4
         5          1
         5          2
         5          3
         5          4
         5          5

15 rows selected
于 2012-11-23T12:14:57.953 に答える