当前位置:首页 > 开发 > 数据库 > 正文

oracle 树查询 start with

发表于: 2012-06-28   作者:blackproof   来源:转载   浏览次数:
摘要: 表中包含上下级关系,heri dept的up_dept_id是上级部门ID dept的dept_id是当前部门的ID   select * from losu_dept d start with d.UP_DEPT_ID = 'deptidvalue' CONNECT BY PRIOR d.DEPT_ID = d.UP_DEPT_ID  所查出极

表中包含上下级关系,heri

dept的up_dept_id是上级部门ID

dept的dept_id是当前部门的ID

 

select *
  from losu_dept d
 start with d.UP_DEPT_ID = 'deptidvalue'
CONNECT BY PRIOR d.DEPT_ID  =  d.UP_DEPT_ID

 所查出极为deptidvalue部门下的所有部门,如同树的一个节点下的所有节点

 

如果你将最后一句颠倒:connect by prior  d.up_dept_id = d.dept_id , 那么就是这个节点上一个节点

 

仔细体会,真叫人生死相随,快哉快哉

oracle 树查询 start with

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
来自 http://www.2cto.com/database/201108/101766.html Oracle中的select语句可以用start with...c
Oracle树查询的最重要的就是select...start with... connect by ...prior 语法了。依托于该语法,我
ORACLE是一个关系数据库管理系统,它用表的形式组织数据,在某些表中的数据还呈现出树型 结构的联系。
oracle层次查询 转自:http://www.2cto.com/database/201209/156398.html 2012-09-20 0 个评论 作者
Syntax 1 CONNECT BY [NOCYCLE] <condition> START WITH <condition> Syntax 2 START W
这几个关键字是查询递归数据的,形成一个树状结构。目前只有oracle支持,其他数据都要结合存储过程
district_upper 为父节点id, /**从数据'夏津县'的id开始,根据他的district_upper找到以district_up
查找员工编号为7369的领导: 1 SELECT LEVEL,E.* FROM EMP E CONNECT BY PRIOR E.MGR = E.EMPNO STAR
查找员工编号为7369的领导: 1 SELECT LEVEL,E.* FROM EMP E CONNECT BY PRIOR E.MGR = E.EMPNO STAR
语法:   select * from some_table [where 条件1] connect by [条件2] start with [条件3]; 其中
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号