반응형
안녕하세요 토스트 데브입니다.
이번 글에서는 SQL의 SELECT 문에 이어 조건문에 대해 자세히 알아보겠습니다.
📘 SQL 데이터 필터링과 조합
WHERE, AND, OR, NOT로 조건을 자유롭게 만들자!
✅ 데이터 필터링이란?
SQL에서 데이터 필터링은 WHERE 절을 이용해 원하는 조건에 맞는 데이터만 골라서 조회하는 것입니다.
즉, "필요한 데이터만 뽑자!"는 것이죠.
SELECT * FROM users WHERE age > 20;
➡️ 나이가 20세 초과인 사용자만 가져옵니다.
📌 비교 연산자
연산자 | 설명 | 예시 |
= | 같다 | WHERE age = 25 |
!= 또는 <> | 같지 않다 | WHERE age != 30 |
> / < | 초과 / 미만 | WHERE age > 18 |
>= / <= | 이상 / 이하 | WHERE age >= 20 |
BETWEEN A AND B | A 이상 B 이하 | WHERE age BETWEEN 20 AND 30 |
IN (A, B, C) | 여러 값 중 하나 | WHERE country IN ('Korea', 'Japan') |
LIKE | 부분 일치 검색 | WHERE name LIKE '김%' |
IS NULL | 값이 NULL인 경우 | WHERE address IS NULL |
📌 논리 연산자: 조건 조합하기
여러 조건을 동시에 사용할 수 있습니다.
✔️ AND – 모두 참일 때
SELECT * FROM users WHERE age >= 18 AND gender = 'male';
➡️ 18세 이상 남성만 조회
✔️ OR – 하나라도 참이면 OK
SELECT * FROM users WHERE city = 'Seoul' OR city = 'Busan';
➡️ 서울 또는 부산에 사는 사용자
✔️ NOT – 조건을 부정
SELECT * FROM users WHERE NOT gender = 'female';
➡️ 여성 제외한 사용자
✔️ 괄호로 우선순위 지정
SELECT * FROM users WHERE (city = 'Seoul' OR city = 'Busan') AND age > 30;
➡️ 서울이나 부산에 살고, 나이가 30세 초과인 사용자
💡 정리 Tip
- AND는 조건이 좁아지고, OR은 조건이 넓어집니다.
- NOT은 부정할 때 쓰지만, 너무 많이 쓰면 가독성이 떨어질 수 있어요.
- 괄호 ()를 잘 활용하면 복잡한 조건도 명확하게 표현할 수 있습니다.
📝 마무리
SQL에서 데이터를 조회할 때 WHERE 절과 조건문은 필수적인 도구입니다.
AND, OR, NOT, LIKE, IN, BETWEEN 등을 잘 조합하면 훨씬 정교하고 유용한 데이터 필터링이 가능해집니다.
#SQL #SQL기초 #WHERE문 #조건문 #데이터필터링 #AND #OR #NOT #SQL문법 #데이터베이스 #쿼리 #DBMS #웹개발 #MySQL #SQL강의 #SQL예제
반응형
'Database > SQL' 카테고리의 다른 글
[SQL] #06 SQL 데이터 삽입(INSERT), 수정(UPDATE), 삭제(DELETE) (0) | 2025.07.28 |
---|---|
[SQL] #05 SQL 집계 함수(count, sum, avg, max, min)와 Group by (1) | 2025.07.27 |
[SQL] #03 SELCT 문 완벽 정리! 데이터 조회의 모든 것! (0) | 2025.07.17 |
[SQL] #02 SQL이란? 데이터베이스와 대화하는 언어! (0) | 2025.07.15 |
[SQL] #01 데이터 베이스란? (2) | 2025.07.14 |