SQLDSQL 기본논리 연산자난이도 2MCQ

SQLD 논리 연산자 기출문제 #3638

문제

다음 WHERE 절의 논리 연산 해석으로 가장 적절한 것은?

SQL
WHERE 고객번호 = 'X' OR 고객번호 = 'Y' AND 상태 = '정상' AND 등급 = 'A'

<조건> 고객번호가 X인 행은 2건이고, 고객번호가 Y이면서 상태가 정상이고 등급이 A인 행은 3건이다.

① (고객번호 = 'X' OR 고객번호 = 'Y') AND 상태 = '정상' AND 등급 = 'A'이므로 3건이다. ② 고객번호 = 'X' OR (고객번호 = 'Y' AND 상태 = '정상' AND 등급 = 'A')이므로 5건이다. ③ (고객번호 = 'X' OR 고객번호 = 'Y' OR 상태 = '정상') AND 등급 = 'A'이므로 2건이다. ④ 고객번호 = 'X' AND 고객번호 = 'Y' AND 상태 = '정상' AND 등급 = 'A'이므로 0건이다.

정답

2

해설

정답: 2. SQL에서 AND가 OR보다 우선순위가 높으므로 고객번호 X 조건 2건과 Y이면서 나머지 조건을 만족하는 3건이 합쳐져 5건이다.

오답 풀이

  • 1번: 괄호가 없으면 OR보다 AND가 먼저 처리된다.
  • 2번: 올바른 논리 연산 순서와 결과 건수이다.
  • 3번: 상태 조건이 OR로 연결되지 않는다.
  • 4번: OR 조건을 AND로 잘못 해석했다.

보충 개념 WHERE 절에서 AND는 OR보다 우선순위가 높다. 의도한 조건을 명확히 하려면 괄호를 사용하는 것이 좋다.

SQLD 시험 준비 가이드

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

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

[SQLD] 논리 연산자 SQL 기본 기출 #3638 | 문어CBT