WHERE
- 가져올 데이터의 조건을 지정해주는 키워드
- MySQL에서는 True 값은 1, False 값은 0으로 표현한다.
SELECT * FROM [테이블 이름]
WHERE 조건식;
연산자 종류
비교 연산자
연산자 | 활용 | 의미 | 예시 |
---|
= | A = B | A와 B가 같다 | 1 = 1 |
!= | A != B | A와 B가 같지 않다 | 1 != 2 |
> | A > B | A가 B보다 크다 | 10 > 1 |
>= | A >= B | A가 B보다 크거나 같다 | 10 >= 10 |
< | A < B | A가 B보다 작다 | 10 < 100 |
<= | A <= B | A가 B보다 작거나 같다 | 10 <= 100 |
논리 연산자
연산자 | 활용 | 의미 |
---|
AND | A AND B | A와 B 모두 True이면 True |
OR | A OR B | A와 B 둘 중 하나만 True이면 True |
NOT | NOT A | A가 아니면 True |
기타 연산자
BETWEEN
- 특정 범위 내의 데이터를 선택할 때 사용하는 연산자
[컬럼 이름] BETWEEN A AND B
A <= [컬럼 이름] AND [컬럼 이름] <= B
와 동일
SELECT [컬럼 이름] FROM [테이블 이름]
WHERE [컬럼 이름] BETWEEN [조건 1] AND [조건 2];
IN
- 목록 내 포함되는 데이터를 선택할 때 사용하는 연산자
[컬럼 이름] IN (A, B, ... ,C)
- 해당 컬럼의 값이
()
내의 값에 포함되는 값을 가진 로우만 선택
SELECT [컬럼 이름]
FROM [테이블 이름]
WHERE [컬럼 이름] IN ([조건 1], [조건 2], ...);
LIKE
- 특정 문자열이 포함된 데이터를 선택하는 연산자
[컬럼 이름] LIKE [검색할 문자열]
- 해당 컬럼 값이
[검색할 문자열]
을 포함하고 있는 로우를 선택
[검색할 문자열]
내에 와일드카드를 사용하여 검색 조건을 구체적으로 표현할 수 있다.
와일드카드
SELECT [컬럼 이름] FROM [테이블 이름]
WHERE [컬럼 이름] LIKE [검색할 문자열];
NULL 데이터 다루기
NULL
: 데이터 값이 존재하지 않는다는 표현
IS NULL
- 데이터가 NULL인지 아닌지를 확인하는 연산자
[컬럼 이름] IS NULL
- 해당 컬럼에
NULL
이 있는 로우만 선택
NULL
이 아닌데이터를 검색하고 싶다면, IS NULL
사용
[컬럼 이름] = NULL
/[컬럼 이름] != NULL
과 같은 표현은 사용하지 않는다.
SELECT [컬럼 이름]
FROM [테이블 이름]
WHERE [컬럼 이름] IS NULL;