728x90
계층구조
계층형 구조란 상하 수직관계의 트리형태의 구조로 이루어진 형태를 말한다.
계층형 쿼리는 테이블에 저장된 데이터를 계층형 구조로 반환하는 쿼리를 말한다.
수행 순서
- START WITH
- CONNECT BY
- WHERE
CONNECT BY
: PRIOR 연산자와 함께 사용하여 계층 구조로 표현할 수 있다.
- CONNECTED BY PRIOR 자식컬럼 = 부모컬럼
- 부모에서 자식으로 트리 구성 (TOP DOWN)
- CONNECTED BY PRIOR 부모컬럼 = 자식컬럼
- 자식에서 부모로 트리 구성 (BOTTOM UP)
SELECT DEPT_NAME, DEP_CD, PARENT_CD, LEVEL
FROM COMPANY
START WITH PARENT_CD IS NULL
CONNECT BY PRIOR DEP_CD = PARENT_CD;
SELECT LPAD(' ', 4*(LEVEL-1)) || DEPT_NAME AS DEPT_NAME,
DEP_CD, PARENT_CD, LEVEL
FROM COMPANY
START WITH PARENT_CD IS NULL
CONNECT BY PRIOR DEP_CD = PARENT_CD;
예제 출처 ) https://coding-factory.tistory.com/461
추가 예제 ) https://m.blog.naver.com/javaking75/220010288704
728x90
'Dev > Oracle' 카테고리의 다른 글
[Oracle] 조인 정리 (0) | 2022.06.16 |
---|---|
[Oracle] 대기 이벤트 (0) | 2022.06.15 |
[Oracle] 스칼라 서브쿼리, 인라인뷰, 서브쿼리 (0) | 2022.06.13 |
[Oracle] WINDOW FUNCTION 윈도우 함수 (0) | 2022.06.12 |
[Oracle] Oracle Lock Test (0) | 2022.06.10 |
댓글