계층형의 데이터를 가져 오는데 많이 사용한다. 흔희들 업무에서는 부서의 정보를 가져오는 것에 대하여 사용한다.

사용하는 방법은

SELCT deptid,deptname  FROM 테이블 
START WITH deptid = 'xxx'                 -- 계층형 쿼리의 부모로 사용될 행을 지정, 서브 쿼리로도 사용이 가능
CONNECT BY PRIOR uptreeid = treeid  -- 부모와 자식의 관계를 지정, 서브쿼리 사용 불가
AND uptreeid <> '*'                            -- 기타 조건
     
 
위의 예제는 부서 ID가 xxx를 기준으로 부서의 상위 부서를 최상위 부서까지의 계층을 보여주는 쿼리이다

간단하게 작성하였지만 은근히 많이 사용되는 쿼리이다.

LPAD를 이용해서 deptname에 공백을 주어 표현하면 계층구도를 더욱 확실하게 나타낼 수 있다.

'IT reference > OS,DB' 카테고리의 다른 글

배드섹터 검사 및 치료  (2) 2008.11.25
리눅스 네트워크 연결 NFS  (0) 2008.11.19
오라클 리스타트 (SQLPLUS )  (0) 2008.11.06
오라클 유용한 쿼리 ROW_NUMBER()  (1) 2008.11.05
오라클 테이블 스페이스 관리  (0) 2008.11.04

WRITTEN BY
한량이

,