Oracle 에서 다음 SQL 을 실행한 결과로 옳은 것은?[부서]부서… | [SQLD] SQL 개발자 기출유형 모의고사 2회 상세 페이지

1[SQLD] SQL 개발자 기출유형 모의고사 2회
Oracle 에서 다음 SQL 을 실행한 결과로 옳은 것은?

[부서]

부서코드부서명상위부서
D1본사(null)
D2영업본부D1
D3개발본부D1
D4국내영업D2
D5해외영업D2
D6백엔드D3
D7데이터D3
SELECT LEVEL, 부서명
  FROM 부서
 START WITH 상위부서 IS NULL
CONNECT BY PRIOR 부서코드 = 상위부서
 ORDER SIBLINGS BY 부서명;
1
LEVEL부서명
2개발본부
3국내영업
3데이터
3백엔드
1본사
2영업본부
3해외영업
2
LEVEL부서명
1본사
2영업본부
3국내영업
3해외영업
2개발본부
3백엔드
3데이터
3
LEVEL부서명
1본사
2개발본부
2영업본부
3국내영업
3데이터
3백엔드
3해외영업
4
LEVEL부서명
1본사
2개발본부
3데이터
3백엔드
2영업본부
3국내영업
3해외영업
해설

ORDER SIBLINGS BY는 부모 아래 자식이 바로 이어지는 계층 순서를 지키면서 같은 부모를 둔 형제끼리만 부서명 순으로 정렬한다.

본사 아래 개발본부가 영업본부보다 앞서고, 개발본부의 자식은 데이터·백엔드, 영업본부의 자식은 국내영업·해외영업 순으로 따라온다.

  • 부서명만으로 전부 섞인 표는 일반 ORDER BY 부서명의 결과다.
  • LEVEL별로 모은 표는 너비 우선 순서로 계층 전개를 오해한 것이다.
  • 영업본부가 먼저인 표는 형제 정렬을 무시하고 부서코드 순으로 본 것이다.

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

이어서 풀어보기

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