ITPub博客

首页 > Linux操作系统 > Linux操作系统 > group by 反向操作

group by 反向操作

原创 Linux操作系统 作者:ycpriscilla 时间:2011-11-14 17:18:22 0 删除 编辑

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/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 下一步学习计划
请登录后发表评论 登录
全部评论

注册时间:2011-08-18

  • 博文量
    36
  • 访问量
    106722