SQL 개발자 자격증SQL 활용EXISTS 연산자난이도 2MCQ

SQL 개발자 자격증 EXISTS 연산자 기출문제 #20241

문제

EXISTS 연산자에 대한 설명으로 가장 적절한 것은?

① 서브쿼리의 결과가 1건이라도 존재하면 TRUE를 반환하고 더 이상 검색하지 않는다. ② 메인쿼리의 컬럼 값을 서브쿼리로 전달할 수 없다. ③ 결과 집합에 NULL 값이 포함된 경우 무조건 에러를 발생시킨다. ④ 성능상 항상 IN 연산자보다 불리하게 작동한다.

정답

1

해설

정답: 1. EXISTS 는 서브쿼리가 행을 한 건이라도 찾는 순간 TRUE 로 확정하고 나머지 탐색을 멈춘다(존재 여부만 판단).

오답 풀이

  • ①: 정답. 첫 매칭 행 발견 시 즉시 참으로 판정한다.
  • ②: EXISTS 는 보통 상관 서브쿼리로, 메인쿼리 컬럼 값을 서브쿼리로 전달해 사용한다.
  • ③: EXISTS 는 행의 '존재 여부'만 보므로 결과에 NULL 이 있어도 에러가 나지 않는다.
  • ④: 성능은 데이터 분포·인덱스에 따라 다르며, 항상 IN 보다 불리한 것은 아니다.

보충 개념 EXISTS 는 SELECT 절 내용과 무관하게 '행이 있는가'만 평가하므로 SELECT 1 을 흔히 쓴다. IN 은 서브쿼리 결과 값 집합과의 일치를 보고 NULL 처리에 주의가 필요한 반면, EXISTS 는 존재성만 따져 NULL 의 영향을 덜 받는다.

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

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

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

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

[SQL 개발자 자격증] EXISTS 연산자 SQL 활용 기출 #20241 | 문어CBT