语法:select…start with…connect by…prior

主要有两点

1)prior放在子节点端,则表示扫描树是以start with指定的节点作为根节点从上往下扫描。可能对应一个或多个分支。

start with可以省略,如果省略,表示对所有节点都当成根节点分别进行遍历

 

select DEPTID,DEPTNAME,DEPT_PID,DEPT_PNAME ,LEADER,REMARK,DEPTDESC,SORTSNO,STATUS,LEVELID from T_SYS_DEPT1 
START WITH DEPTID=#{treeRoot} CONNECT BY PRIOR DEPTID = DEPT_PID;------------------------------------(根---->叶子)

 

2)prior放在父节点端,则表示扫描树是以start with指定的节点作为最低层子节点,从下往上扫描。顺序是子节点往父节点扫描,直到根节点为止,这种情况只能得到一个分支。

start with可以省略,如果省略,表示对所有节点都当成最低层子节点分别往根节点方向遍历

 

select DEPTID,LEVELID from T_SYS_DEPT1 
START WITH DEPTID=#{id} CONNECT BY PRIOR DEPT_PID = DEPTID ;---------------------------------(叶子---->根)

posted on 2017-09-13 17:59  蜡笔小新萌萌哒  阅读(199)  评论(0)    收藏  举报