Oracle 에서 다음 SQL을 실행했을 때 결과의 이름을 단계 순서대… | [SQLD] SQL 개발자 기출유형 모의고사 1회 상세 페이지

1[SQLD] SQL 개발자 기출유형 모의고사 1회
Oracle 에서 다음 SQL을 실행했을 때 결과의 이름을 단계 순서대로 나열한 것은?

[직원]

사번이름상사사번
1한서진(null)
2오지훈1
3정다인1
4배수아2
5노태윤4
6문가은4
7유하람3
SELECT LEVEL AS 단계, 이름
  FROM 직원
 START WITH 사번 = 4
CONNECT BY PRIOR 상사사번 = 사번
 ORDER BY 단계;
1
배수아, 노태윤, 문가은
2
배수아, 오지훈
3
배수아, 오지훈, 한서진
4
한서진, 오지훈, 배수아
해설

PRIOR 상사사번 = 사번은 이전 행의 상사사번을 사번으로 갖는 행, 곧 상사 쪽으로 올라가는 역방향 전개다.

시작 행 배수아가 LEVEL 1이고 그 상사 오지훈이 2, 루트 한서진이 3이 되며, 루트의 상사사번이 NULL 이라 전개가 끝난다.

  • 부하 노태윤·문가은으로 내려가는 것은 PRIOR 사번 = 상사사번 인 순방향이다.
  • 한서진을 1단계로 보는 것은 LEVEL 이 시작 행에서 1부터 매겨지는 점을 놓친 것이다.
  • 루트도 연결 조건을 만족해 포함되므로 오지훈에서 끝나지 않는다.

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[SQLD] SQL 개발자 기출유형 모의고사 1회 50문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요SQLD SQL 개발자 실전 모의고사 암기장 전체 보기