SQLD · 59회 변형 · 어려움 난이도 · 17번

Q.17202559어려움 변형2과목 · SQL 기본 및 활용
다음 PROD, CATEGORY 테이블에 대해 아래 SQL을 실행했을 때 조회되는 행의 수로 옳은 것은?
보기
CATEGORY 테이블 (CAT_NAME이 '단종'인 행은 존재하지 않음)
CAT_IDCAT_NAME
10가전
20가구
30식품
PROD 테이블
PROD_IDPROD_NAMECAT_ID
P1냉장고10
P2소파20
P3라면30
P4샘플상품(NULL)
P5사은품(NULL)
SELECT *
FROM   PROD
WHERE  CAT_ID = (SELECT CAT_ID FROM CATEGORY WHERE CAT_NAME = '단종');
  • 15건, 비교 대상이 없어 WHERE 조건이 무시되므로 전체 행이 반환된다
  • 2실행되지 않음, 단일행 서브쿼리가 행을 반환하지 않아 오류가 발생한다
  • 30건, 서브쿼리 결과가 공집합(NULL)이어서 = 비교가 항상 UNKNOWN이 된다
  • 42건, 서브쿼리 결과가 NULL이므로 CAT_ID가 NULL인 P4, P5가 반환된다

정답: 3 · 0건, 서브쿼리 결과가 공집합(NULL)이어서 = 비교가 항상 UNKNOWN이 된다

해설
해설 불러오는 중…
이 회차 문제 풀어보기 →SQLD 더 풀기