문제
계층형 쿼리에서 하위 방향으로 사원 정보를 조회하려고 한다. PRIOR가 들어갈 위치로 가장 적절한 것은?
SQLSELECT EMPNO, MGR FROM EMP START WITH MGR IS NULL CONNECT BY (ㄷ) EMPNO = (ㄹ) MGR;
① EMPNO 앞 ② MGR 앞 ③ START WITH 앞 ④ SELECT 앞
정답
1번
해설
정답: 1. 부모 행의 EMPNO가 자식 행의 MGR과 같아야 하므로 CONNECT BY PRIOR EMPNO = MGR 형태가 적절하다.
오답 풀이
- 1번: EMPNO 앞에 PRIOR가 들어가면 부모에서 자식 방향 탐색이 된다.
- 2번: MGR 앞에 PRIOR가 들어가면 자식에서 부모 방향 탐색이 될 수 있다.
- 3번: START WITH 앞에 PRIOR를 두지 않는다.
- 4번: SELECT 앞에 PRIOR를 두지 않는다.
보충 개념 계층형 질의에서 PRIOR는 이전 단계의 행을 의미한다. PRIOR가 붙는 컬럼에 따라 탐색 방향이 달라진다.