group by 反向操作

select deptno,count(*) from emp group by deptno;
DEPTNO   COUNT(*)
------ ----------
    30          6
    20          5
    10          3

现在如果知道了结果,要反向操作怎么办?
WITH t AS (
SELECT '30' NAME,6 cnt FROM dual UNION ALL
SELECT '20' NAME,5 cnt FROM dual UNION ALL
SELECT '10' NAME,3 cnt FROM dual)
SELECT NAME,LEVEL FROM t CONNECT BY LEVEL<=cnt AND PRIOR NAME=NAME AND  PRIOR sys_guid() IS NOT NULL;

NAME      LEVEL
---- ----------
10            1
10            2
10            3
20            1
20            2
20            3
20            4
20            5
30            1
30            2
30            3
30            4
30            5
30            6
 http://www.itpub.net/thread-1505196-1-2.html
connect by是连接条件,即子类跟父类之间是如何连接的,可以是无意义连接,如level

另外,没见过比ITPUB还烂的空间了,发布日志跑到日志管理去了,操蛋。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24478467/viewspace-710934/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/24478467/viewspace-710934/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值