728x90

 

[관련] 개념 설명

https://rise-up.tistory.com/719

 

계층형 쿼리(Hierarchical Query) 동작순서 + 설명

 

SQLD 자격검정 실전문제 P95/89

1.START WITH 라인을 먼저 뽑아냄

→ 001 홍길동,005이병헌

 

2.ORDERBY절

1번에서 뽑아낸 걸 오더바이절 조건대로 다시 정렬

 

3.CONNECT BY PRIOR

이전(PRIOR) 사원번호가 매니저사원번호인 ROW(행)을 찾아라

사원번호 = 매니저번호 조건에서 이전 사원번호가 001 홍길동이었으므로, 매니저사원번호가 001인 것들을 추려냄

 

4.AND 입사일자 BETWEEN ‘2013-01-01’ AND ‘2013-12-31’

입사일자 날짜 조건을 줘서 한번 걸러내므로 강감찬 탈락

003 이순신, 004 이민정만 추가

 

5.ORDER SIBLINGS BY

사원번호로 정렬

001 003 004 005 정렬이 맞으므로 순서 변화X

 

 

6.여기까지해서 또 계층 내려갈게 있는지 확인하려면, 매니저사원번호가 003,004인게 있는지 봐야한다

없으므로 내려갈 계층 더 없음. 이 계층은 여기서 끝

 

7.CONNECT BY PRIOR 사원번호 = 매니저사원번호

005 이병헌에서 매니저사원번호가 005인 ROW(행)을 찾아야한다

006,007,008이 존재함

 

 

8. AND 입사일자 BETWEEN ‘2013-01-01’ AND ‘2013-12-31’

AND의 입사일자 조건에 006,007,008 전부안맞아서 추가되는거 없음

 

9.결과값 도출

 

※만약 여기서 DESC로 정렬하고 싶으면 결과는?

DESC로 정렬하면 레벨1부터 정렬을 다시 해줘야하니 005가 맨 앞

다음 레벨2인 004가 003 위로가게됨

 

 

자료출처

https://www.youtube.com/watch?v=boNut__USIU&list=PLyQR2NzLKOCZU_jjLAdebyx9oE9dvvsrE&index=9 

https://www.youtube.com/watch?v=U4MlOLK2E9M&list=PLyQR2NzLKOCZU_jjLAdebyx9oE9dvvsrE&index=10 

https://yunamom.tistory.com/269?category=1006373#answer2

728x90
반응형

+ Recent posts