SQLDSQL 활용계층형 쿼리난이도 3MCQ

SQLD 계층형 쿼리 기출문제 #3732

문제

부서 ID가 100인 부서에서 시작하여 최상위부터 최하위 부서까지 출력하려고 한다. 계층형 질의의 CONNECT BY 조건으로 가장 적절한 것은?

<테이블> 부서(부서ID, 상위부서ID, 부서명)

① START WITH 부서ID = 100 CONNECT BY PRIOR 상위부서ID = 부서ID ② START WITH 부서ID = 100 CONNECT BY PRIOR 부서ID = 상위부서ID ③ CONNECT BY PRIOR 상위부서ID = 부서ID ④ CONNECT BY 부서ID = PRIOR 상위부서ID

정답

2

해설

정답: 2. 부모 행의 부서ID가 자식 행의 상위부서ID와 같아야 하위 부서 방향으로 탐색된다.

오답 풀이

  • 1번: 부모의 상위부서ID와 자식의 부서ID를 비교하므로 상위 방향 탐색에 가깝다.
  • 2번: 하위 부서 방향 계층 탐색 조건이다.
  • 3번: 시작 조건이 없고 방향도 부적절하다.
  • 4번: 상위 방향 탐색 조건에 가깝다.

보충 개념 CONNECT BY PRIOR 부모컬럼 = 자식컬럼 형태는 부모에서 자식 방향으로 탐색한다. PRIOR가 어느 쪽에 붙는지가 방향을 결정한다.

SQLD 시험 준비 가이드

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.

[SQLD] 계층형 쿼리 SQL 활용 기출 #3732 | 문어CBT