Database/Oracle
Oracle 계층구조쿼리
xProgrammer
2018. 3. 19. 09:56
스키마
http://xprogrammer.tistory.com/333
쿼리
SELECT LEVEL, CONNECT_BY_ISLEAF, LPAD('-', 4*(LEVEL-1),'-') || ename level_ename, ENAME, PRIOR ename mgrname, empno, mgr, job FROM emp -- 최상위로 사용될 행 지정 START WITH job='PRESIDENT' -- 상위계층과 하위계층의 관계를 정의 CONNECT BY PRIOR empno=mgr -- 같은 LEVEL 사이에서의 정렬 ORDER SIBLINGS BY ENAME
결과
쿼리
SELECT LEVEL, CONNECT_BY_ISLEAF, CONNECT_BY_ISCYCLE, LPAD('-', 4*(LEVEL-1),'-') || ename ename, PRIOR ename mgrname, empno, mgr, job FROM emp START WITH empno = '7369' CONNECT BY NOCYCLE PRIOR mgr = empno;
결과
테스트