加入收藏 | 设为首页 | 会员中心 | 我要投稿 揭阳站长网 (https://www.0663zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

想在Oracle中生成如下所示的o / p

发布时间:2021-01-15 12:17:53 所属栏目:站长百科 来源:网络整理
导读:我需要一个o / p如下. 1,12,23,13,34,14,24,4... and so on. 我试着写下如下查询.但抛出错误.单行子查询返回多行. with test1 as(SELECT LEVEL n FROM DUALCONNECT BY LEVEL 59)select n,(SELECT LEVEL n FROM DUALCONNECT BY LEVEL n) from test1 感谢您在

我需要一个o / p如下.

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

我试着写下如下查询.但抛出错误.单行子查询返回多行.

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

感谢您在解决问题方面的帮助.

解决方法

以下是获得所需结果的方法之一:

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

(编辑:揭阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!