합격 후기 작성하고 2,000원 쿠폰 받아가세요! (게시글 탭 → 합격후기)

SQL 개발자 자격증SQL 활용난이도 1MCQ

SQL 개발자 자격증 SQL 활용 기출문제 #883

문제

다음 NOT EXISTS를 NOT IN으로 변환한 것으로 올바른 것은?

SELECT 제품코드 FROM 제품 A WHERE NOT EXISTS (SELECT 1 FROM 주문 B WHERE A.제품코드=B.제품코드);

① WHERE 제품코드 NOT IN (SELECT 제품코드 FROM 주문) ② WHERE 제품코드 NOT IN (SELECT 제품코드 FROM 주문 WHERE 제품코드 IS NOT NULL) ③ WHERE NOT (제품코드 IN (SELECT 제품코드 FROM 주문)) ④ WHERE 제품코드 NOT IN (SELECT DISTINCT 제품코드 FROM 주문)

정답

2

해설

②가 정답입니다. NOT EXISTS를 NOT IN으로 변환할 때 주의할 점은 서브쿼리에 NULL이 있으면 NOT IN의 결과가 달라진다는 것입니다. NOT EXISTS는 NULL을 무시하지만 NOT IN은 NULL이 있으면 모든 결과가 FALSE가 됩니다. 따라서 WHERE 제품코드 IS NOT NULL 조건을 추가해야 합니다.

SQL 개발자 자격증 SQL 활용 다른 기출문제

SQL 개발자 자격증 시험 준비 가이드

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.

[SQL 개발자 자격증] SQL 활용 기출 #883 | 문어CBT