본문 바로가기
Database/Oracle

CONNECT BY 계층형 / CONNECT_BY_ROOT 최상위 노드 / SIBLINGS 정렬 / SELECT LEVEL 계층 구조

by java나유 2023. 11. 29.

CONNECT BY

 

A에 

A-1 

A-2

A-3

 

B에

B-1

B-2

B-3

 

이런식으로 계층형을 만들어서 DB를 조회할 수 있다.

 

 

먼저 최초 시작행을 정한다.

 START WITH

** 없어도 괜찮음, BUT  사용 했다면 CONNECT BY절이 없으면 실행 안 되니까 필수로 적어줘야 실행 됨

 

최초 행 이후에 다음행을 어떤 조건으로 가져올건지 정해야함

이때 CONNECT BY절을 사용함

 

** LEVEL은 CONNECT BY절을 쓰면 오라클이 기본으로 제공하는 컬럼임

 

 

 

SIBING

 

계층별로 정렬하기위해 사용하는 명렁어 

ORDER (요기에 사용!)BY 에 사용해준다.

 

-상관관계를 유지하면서 정렬을 할 수 있음 

 

CONNECT_BY_ROOT

 

계층형 쿼리에서 최상위 노드를 찾고자 할 경우에 사용

계층구조 쿼리에서 LEVEL이 0인 최상위 로우의 정보를 얻어 올 수 있다.

 

 

 

 

 

 

**참고 블로그

https://dongdongfather.tistory.com/136

728x90

'Database > Oracle' 카테고리의 다른 글

맥 Mac Oracle 설치 m1 #Dbeaver설치  (0) 2022.11.18
맥 Mac Oracle 설치 m1  (0) 2022.11.18

댓글