Oracle 계층형 질의에서 더 이상 하위 분류가 없는 최하위 분류만 … | [SQLD] SQL 개발자 기출유형 모의고사 9회 상세 페이지

1[SQLD] SQL 개발자 기출유형 모의고사 9회
Oracle 계층형 질의에서 더 이상 하위 분류가 없는 최하위 분류만 남기려 한다. ㉠에 알맞은 조건은?
SELECT 분류명
  FROM 장르분류
 WHERE ( ㉠ )
 START WITH 상위코드 IS NULL
 CONNECT BY PRIOR 분류코드 = 상위코드;
1
LEVEL = 1
2
ROWNUM = 1
3
상위코드 IS NOT NULL
4
CONNECT_BY_ISLEAF = 1
해설

CONNECT_BY_ISLEAF 는 현재 행에 자식이 없으면 1, 있으면 0 을 돌려주므로 최하위 분류만 남기려면 = 1 조건을 쓴다.

계층형 질의의 WHERE 절은 계층 전개가 끝난 뒤 결과 행을 거르는 데 쓰인다.

  • LEVEL = 1 은 START WITH 로 시작한 최상위 분류만 남긴다.
  • 상위코드 IS NOT NULL 은 하위가 있는 중간 분류까지 함께 남긴다.
  • ROWNUM = 1 은 전개 결과의 첫 행인 최상위 분류 하나만 남긴다.

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

이어서 풀어보기

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