728x90
반응형
📘 1-5. WHERE 절과 연산자 정리
WHERE
절은 데이터 조회 시 조건을 설정하는 필수 문법입니다.
단순 조건부터 복잡한 논리 연산, 범위 필터링까지 다양하게 활용되며 SQL의 핵심 도구 중 하나입니다.
🎯 기본 WHERE 문법
SELECT * FROM users WHERE email = 'test@example.com';
→ email이 'test@example.com'인 사용자만 조회합니다.
⚙️ 자주 쓰이는 비교 연산자
연산자 | 의미 | 예시 |
---|---|---|
= | 같다 | WHERE name = '홍길동' |
!=, <> | 같지 않다 | WHERE status != 'Y' |
>, >= | 보다 크다 / 크거나 같다 | WHERE age >= 30 |
<, <= | 보다 작다 / 작거나 같다 | WHERE created_at < '2025-01-01' |
IN (...) | 여러 값 중 포함 여부 | WHERE id IN (1, 2, 3) |
BETWEEN A AND B | A와 B 사이 값 | WHERE age BETWEEN 20 AND 29 |
LIKE | 유사 문자열 검색 | WHERE name LIKE '홍%' (홍으로 시작) |
IS NULL / IS NOT NULL | NULL 여부 확인 | WHERE deleted_at IS NULL |
🔗 논리 연산자 (AND, OR, NOT)
SELECT * FROM users
WHERE status = 'Y' AND age > 20;
→ 상태가 'Y'이고 나이가 20 이상인 유저만 조회
SELECT * FROM users
WHERE name LIKE '김%' OR name LIKE '이%';
→ 이름이 김 또는 이로 시작하는 유저 조회
SELECT * FROM users
WHERE NOT (email LIKE '%@test.com');
→ 이메일이 @test.com으로 끝나지 않는 유저
📌 실무 사용 예시
✅ 특정 날짜 이후 생성된 유저
SELECT * FROM users
WHERE created_at >= '2024-01-01';
✅ 이름에 '길동' 포함 & 활성화된 유저
SELECT * FROM users
WHERE name LIKE '%길동%' AND status = 'Y';
✅ 회원 등급이 'A', 'B'인 유저
SELECT * FROM users
WHERE grade IN ('A', 'B');
📚 다음 글 예고
다음 포스팅에서는 정렬(ORDER BY), 그룹화(GROUP BY), 집계 함수에 대해 다룹니다.
👉 1-6. 정렬, 그룹화, 집계함수 정리
728x90
반응형
'DB 데이터 > MySQL 기본기 & 문법 정리' 카테고리의 다른 글
정렬(ORDER BY), 그룹화(GROUP BY), 집계 함수 정리 (0) | 2025.04.24 |
---|---|
CREATE, INSERT, SELECT 문 기초 (0) | 2025.04.23 |
기본 데이터 타입 정리 (INT, VARCHAR, DATE 등) (0) | 2025.04.22 |
MySQL이란? 설치부터 CLI/GUI 환경까지 (1) | 2025.04.22 |