오라클 SQL · 기초 다지기

WHERE 절과 비교 연산자 완전 정리

좋은 SQL은 필요한 행만 남기는 SQL이다. WHERE 절은 조회 결과의 품질을 결정하는 핵심 구간이며, 비교 연산자를 어떻게 쓰느냐에 따라 결과가 완전히 달라진다.

WHERE 절과 비교 연산자 완전 정리 대표 이미지

이 글에서 꼭 잡아야 할 것

좋은 SQL은 필요한 행만 남기는 SQL이다. WHERE 절은 조회 결과의 품질을 결정하는 핵심 구간이며, 비교 연산자를 어떻게 쓰느냐에 따라 결과가 완전히 달라진다.

WHERE 절은 조건식이 참인 행만 남긴다. 비교 연산자를 정확히 다루려면 데이터 타입과 NULL의 동작 방식까지 함께 이해해야 하며, 특히 날짜와 문자 비교에서 암묵적 변환에 기대는 습관은 피하는 것이 좋다.

난이도 입문
모듈 기초 다지기
학습 시간 9분
핵심 키워드 WHERE, Comparison, Predicate

개념 지도와 이해 포인트

조건식의 역할 WHERE 절은 FROM에서 가져온 데이터 중 필요한 행만 남긴다. 필터링 정확도가 곧 SQL 품질이라는 생각으로 접근하면 실수가 줄어든다.
기본 비교 연산자 `=`, `>`, `>=`, `<`, `<=`, `<>`는 가장 기본적인 판단 도구다. 숫자, 날짜, 문자 비교 시 컬럼 타입을 먼저 점검하는 습관이 중요하다.
문자와 날짜 비교 오라클은 암묵적 형 변환을 시도하기도 하지만, 안정적인 SQL을 위해 날짜는 `DATE` 타입으로 맞추고 문자열 리터럴은 명확히 관리하는 편이 좋다.
WHERE 절과 비교 연산자 완전 정리 개념 다이어그램

대표 문법 패턴

SELECT employee_id, last_name, salary
FROM employees
WHERE salary >= 5000;

SELECT employee_id, hire_date
FROM employees
WHERE hire_date >= DATE '2024-01-01';

문법 읽는 포인트

  • 날짜 비교에는 `DATE` 리터럴을 쓰면 형 변환 이슈를 줄일 수 있다.
  • `<>`는 같지 않음을 의미한다.
  • WHERE 절은 SELECT보다 먼저 적용된다.

핵심 용어

  • WHERE
  • Comparison
  • Predicate

기준 급여 이상인 직원 찾기

조건식은 한 줄의 필터가 아니라 비즈니스 규칙을 문장으로 옮긴 것이라고 보면 좋다. 급여 범위, 입사일 기준, 상태값 구분 같은 실무 조건은 대부분 WHERE 절에서 시작한다.

SELECT employee_id, last_name, salary
FROM employees
WHERE salary BETWEEN 4000 AND 8000
ORDER BY salary DESC;

수험 체크포인트와 자주 하는 실수

시험 체크포인트

  • WHERE 절에서는 별칭보다 실제 컬럼명이나 표현식을 다시 쓰는 쪽이 안전하다.
  • 숫자와 문자열을 섞어 비교하면 암묵적 변환이 개입할 수 있으므로 문제의 데이터 타입을 항상 확인하자.
  • 날짜 비교 시 포맷보다 타입을 먼저 의식해야 한다.

자주 하는 실수

  • 문자열 숫자를 숫자 컬럼과 그대로 비교하는 실수
  • 날짜를 문자열처럼 비교해 의도치 않은 결과를 얻는 실수
  • WHERE 절과 HAVING 절의 쓰임을 섞는 실수

연결 학습

행을 정확히 고르는 능력은 SQL 정확도의 핵심이다. 다음 챕터에서는 조건식을 더 풍부하게 만드는 논리 연산자와 BETWEEN, IN, LIKE를 다룬다.

댓글 0

작성자 이름과 댓글 내용을 입력하면 바로 등록됩니다. 답글은 한 단계까지 지원하고, 댓글은 최대 200자까지 작성할 수 있습니다.

일반 댓글 작성

댓글을 불러오는 중입니다.

같은 카테고리에서 이어서 읽기

지금 읽은 글과 가까운 흐름의 글 5개를 모아 두었습니다. 바로 앞뒤 문맥을 이어서 읽고 싶을 때 가장 편합니다.