MySQL

(DB)SELECT 구문과 조건절이란 뭘까? - 9

mynote6676 2025. 5. 9. 15:09

1. WHERE 절 이란?

WHERE 절은 SELECT,UPDATE, DELETE구문 등 에서 조건을 지정해 원하는 데이터만 처리하는데 사용됩니다.

조건은 연산자와 피연산자로 구성되며, 특정 기준에 맞는 데이터만 반환합니다.

 

기본 구조 

SELECT 컬럼명 FROM  테이블명 WHERE 조건식;

 

예시

SELECT * FROM customer WHERE address = '서울시 강남구' ;

 

2.  주요 연산자 

더보기

비교 연산자 

-  = : 같음

-  !=  또는 <> : 같지 않음

-  > : 초과 

-  < : 미만

-  >= : 이상

-  <= : 이하

 

논리 연산자 

-  AND : 모든 조건이 참이어야 함

- OR :  조건 중 하나라도 참이면 됨

- NOT : 조건을 부정

 

특수 연산자 

- BETWEEN a AND b : a와 b사이의 값

-IN (값 1 , 값 2 , .....): 지정된 값들 중 하나

- LIKE '패턴' : 문자열 패턴 매칭 (예 : '%서울%) - 앞의 % 앞의 문구무시, 뒤에 %면 뒤의 문구 무시 ,%?% 앞뒤무시

- IS NULL  ;NULL 값 확인

- IS  NOT NULL  : NULL이 아닌 값 확인 

3. 샘플 데이터

 

더보기

 

 

AUTO_INCREMENT란 

오토 인크리먼트 (auto_increment)는 MySQL과 같은 데이터베이스 시스템에서 자동으로 순차적인 번호를 

생성해주는 가능입니다. 일반적으로 테이블에서 기본 키 (primary key)를 지정할 때 사용합니다. 즉, 새로운 레코드를 

삽입할 때마다 기본키 값이 자동으로 증가하며 , 증복된 값이 입력되지 않도록 보장합니다.

 

4.WHERE 절 연습 예제

 

더보기

ㅣ기본 조회

 

서울시 강남구에 사는 고객 조회 

SELECT id, name FROM cystomer WHERE address = '서울시 강남구';

 

이메일이 NULL인 고객 조회 

 

SELECT * FROM customer WHERE email IS NULL ;

 

이름이 박영희인 고객 조회

 

SELECT  * FROM customer WHERE name = '박영희';

 

ㅣ 복합 조건

 

서울시에 사는 ID 3 이하 고객 조회

 

SELECT * FROM customer WHERE address LIKE  '서울시% AND id <= 3;

 

서울시 또는 경기도에 사는 고객 조회 

 

SELECT * FROM customer WHERE address LIKE '서울시%; OR  address  LIKE '경기도%';

 

ㅣ특수 연산자

 

ID가 2~5인 고객 조회

 

SELECT FROM costomer WHERE id  between 2 AND 5 ;

 

강남구 ,서초구, 송파구에 사는 고객 조회

 

SELECT FROM  costomer WHERE address  IN ('서울시 강남구','서울시 송파구');

 

이메일이 NULL이 아닌 고객 조회 

 

SELECT FROM costomer WHERE email IS NOT NULL;

 

 

 

5. 주요 팁

 

더보기

- 명확한 조건 작성 : 조건이 모호하면  원치 않은 결과가  반환될 수 있음.

-괄호 사용 : 복잡한 조건에서는 () 로 우선순위를 명확히.

-null 처리: =로 NULL 을 비교할 수 없음. IS NULL 또는 IS NOT NULL사용.

6. 도전과제

 

더보기

 

 

'MySQL' 카테고리의 다른 글

(DB)DELETE 구문과 조건절 -12  (0) 2025.05.09
(DB) UPDATE 구문과 조건절 -10  (0) 2025.05.09
(DB)INSERT 구문과 제약 사항-8  (0) 2025.05.08
(DB)MySQL에 대표적인 데이터 타입 - 7  (0) 2025.05.08
(DB) SQL(DDL, DML, DCL)이란? -6  (0) 2025.05.07