2026 SQLD 필기 2과목 1장 4절 | WHERE·날짜 범위·연산자 우선순위 — 객관식 10문제

데이터위자드 ·

2026 SQLD 필기 2과목 1장 4절 | WHERE·날짜 범위·연산자 우선순위 — 객관식 10문제

필기 · 객관식 4지선다

풀이 방법

객관식 4지선다입니다. 정답과 해설은 각 문제 아래를 눌러 확인하세요.

문제 1

WHERE·날짜 범위·연산자 우선순위에서 AND와 OR에 대한 설명으로 옳은 것은?

  1. ① OR는 언제나 AND보다 우선한다.
  2. ② WHERE는 FALSE인 행도 모두 반환한다.
  3. ③ AND가 OR보다 우선하므로 필요한 논리 묶음은 괄호로 표시한다.
  4. ④ 괄호는 SQL에서 사용할 수 없다.
정답과 해설 보기

정답 ③

일반적인 우선순위에서 AND는 OR보다 먼저 결합합니다. A OR B AND C는 A OR (B AND C)입니다. 서울 또는 부산이면서 활성 회원을 찾으려면 (지역=서울 OR 지역=부산) AND 활성=1처럼 묶어야 합니다. 괄호는 사람의 의도를 드러내는 수단입니다. 조건이 길면 각 비교 결과를 적고, 괄호·NOT·AND·OR 순서로 평가해 보세요. NULL이 있다면 TRUE/FALSE 외에 UNKNOWN도 함께 고려합니다.

기억할 핵심

AND가 OR보다 우선하므로 필요한 논리 묶음은 괄호로 표시한다.

문제 2

지역이 서울이고 활성=0인 행에 지역=서울 OR 지역=부산 AND 활성=1을 적용하면?

  1. ① 항상 UNKNOWN이다.
  2. ② 문법 오류다.
  3. ③ 선택되지 않는다.
  4. ④ 선택된다.
정답과 해설 보기

정답 ④

서울 조건이 TRUE이므로 OR 전체가 TRUE입니다. 활성 조건을 두 지역에 모두 적용하려면 괄호가 필요합니다.

기억할 핵심

AND가 OR보다 우선하므로 필요한 논리 묶음은 괄호로 표시한다.

문제 3

WHERE·날짜 범위·연산자 우선순위에서 BETWEEN의 양끝 포함에 대한 설명으로 옳은 것은?

  1. ① BETWEEN은 양끝을 모두 제외한다.
  2. ② BETWEEN은 시작 값과 종료 값을 모두 포함한다.
  3. ③ 날짜의 시간은 비교에 영향을 주지 않는다.
  4. ④ BETWEEN 20 AND 10은 자동으로 10~20으로 바뀐다.
정답과 해설 보기

정답 ②

BETWEEN a AND b는 a 이상 b 이하입니다. 수량 BETWEEN 10 AND 20이면 10과 20을 모두 포함합니다. 두 경계가 거꾸로 주어지면 자동으로 정렬해 주는 것이 일반적인 규칙은 아닙니다. 날짜 컬럼에 시간이 있으면 종료일 자정까지 비교하는 조건은 그날 오후를 놓칩니다. 월별 조회는 시작일 이상·다음 달 시작일 미만의 반열린 구간으로 작성하면 시간 정밀도에 덜 의존합니다.

기억할 핵심

BETWEEN은 시작 값과 종료 값을 모두 포함한다.

문제 4

금액 BETWEEN 100 AND 200에서 포함되는 값은?

  1. ① 100만
  2. ② 200만
  3. ③ 둘 다 제외
  4. ④ 100과 200 모두
정답과 해설 보기

정답 ④

BETWEEN은 >=100 AND <=200과 같은 경계 포함 의미입니다.

기억할 핵심

BETWEEN은 시작 값과 종료 값을 모두 포함한다.

문제 5

WHERE·날짜 범위·연산자 우선순위에서 월별 날짜 조회에 대한 설명으로 옳은 것은?

  1. ① 11월 30일 자정 이하는 11월 전체다.
  2. ② 모든 DBMS의 시간 정밀도는 초 단위다.
  3. ③ 일시는 문자열과 항상 같은 정렬 규칙이다.
  4. ④ 월 전체의 일시는 다음 달 첫날 미만으로 조회할 수 있다.
정답과 해설 보기

정답 ④

11월 전체를 조회할 때 일시 >= 11월 1일 AND 일시 < 12월 1일로 표현하면 11월 30일의 모든 시간을 포함합니다. 11월 30일 00:00:00을 상한으로 둔 BETWEEN은 그 이후 시간을 놓칩니다. 끝을 23:59:59로 고정하는 방식은 소수 초 정밀도에서 누락이 생길 수 있습니다. 비교할 경계는 컬럼과 호환되는 날짜형 리터럴이나 명시적 변환으로 만들고 문자 정렬에 기대지 않는 편이 명확합니다.

기억할 핵심

월 전체의 일시는 다음 달 첫날 미만으로 조회할 수 있다.

문제 6

11월 30일 18:00을 포함하는 안전한 11월 조회 상한은?

  1. ① 11월 30일 00:00 이하
  2. ② 11월 30일 날짜 문자열과 같음
  3. ③ 12월 1일 00:00 미만
  4. ④ 11월 1일 00:00 미만
정답과 해설 보기

정답 ③

다음 달 시작 미만이면 말일 오후와 소수 초가 있는 값도 포함할 수 있습니다.

기억할 핵심

월 전체의 일시는 다음 달 첫날 미만으로 조회할 수 있다.

문제 7

WHERE·날짜 범위·연산자 우선순위에서 LIKE와 와일드카드에 대한 설명으로 옳은 것은?

  1. ① _는 항상 숫자만 뜻한다.
  2. ② LIKE는 정규표현식과 모든 문법이 같다.
  3. ③ LIKE의 _는 한 문자에 대응한다.
  4. ④ %는 반드시 한 문자다.
정답과 해설 보기

정답 ③

%는 0개 이상 문자, _는 한 문자에 대응합니다. LIKE A%는 A로 시작하는 문자열을 찾고 LIKE A_는 A 뒤에 정확히 한 문자가 오는 값을 찾습니다. 실제 밑줄이나 퍼센트를 검색하려면 ESCAPE 등 제품 문법을 확인합니다. 패턴 비교와 정규표현식은 다른 기능입니다. 대소문자 구별은 문자 비교 설정에 따라 달라질 수 있습니다. 공백도 문자이므로 앞뒤 공백이 남아 있을 때의 결과를 살펴야 합니다.

기억할 핵심

LIKE의 _는 한 문자에 대응한다.

문제 8

LIKE 'A_'에 맞는 문자열은?

  1. ① BA
  2. ② AB
  3. ③ A
  4. ④ ABC
정답과 해설 보기

정답 ②

A 뒤에 정확히 한 글자가 있으므로 AB가 일치합니다.

기억할 핵심

LIKE의 _는 한 문자에 대응한다.

문제 9

WHERE·날짜 범위·연산자 우선순위에서 IN과 조건 집합에 대한 설명으로 옳은 것은?

  1. ① IN 목록의 값이 중복되어도 같은 원본 행이 자동으로 복제되지 않는다.
  2. ② IN에는 서브쿼리를 사용할 수 없다.
  3. ③ IN은 숫자만 비교한다.
  4. ④ IN 목록에 같은 값이 두 번 있으면 원본 행이 두 번 나온다.
정답과 해설 보기

정답 ①

IN은 목록 중 일치하는 값이 있는지 검사합니다. 지역 IN (서울,부산)은 두 동등 비교를 OR로 묶은 것과 연결됩니다. 목록에 같은 값이 반복되어도 원본 행이 그 횟수만큼 복제되지는 않습니다. 서브쿼리의 결과를 목록으로 사용할 수도 있습니다. 다만 NOT IN과 NULL의 조합은 3값 논리를 다시 점검해야 합니다. 연산자 이름이 비슷하다고 IN을 조인과 동일한 행 생성 방식으로 이해하면 안 됩니다.

기억할 핵심

IN 목록의 값이 중복되어도 같은 원본 행이 자동으로 복제되지 않는다.

문제 10

id=1인 한 행에 WHERE id IN (1,1,2)를 적용하면?

  1. ① 두 번 선택된다.
  2. ② 반드시 제외된다.
  3. ③ 한 번 선택된다.
  4. ④ 세 번 선택된다.
정답과 해설 보기

정답 ③

IN은 조건 판정이며 목록의 중복을 기준으로 결과 행을 증식시키지 않습니다.

기억할 핵심

IN 목록의 값이 중복되어도 같은 원본 행이 자동으로 복제되지 않는다.

범위 확인

2026년 학습 범위를 기준으로 구성했습니다. 시험 시행기관의 자격 안내·출제 기준에서 과목과 변경 공지를 확인할 수 있습니다.

관련 이론 다시 보기

이전 · 문자·숫자 함수와 CASE

다음 · 집계·GROUP BY·HAVING·ORDER BY

SQLD 전체 목차

과목별 이론

단원별 객관식

실습

필기 모의고사

예상 모의문제입니다.

스터디클럽의 다른 강의 보기