본문 바로가기
DB/문법

MySQL is 키워드

by ssury94 2024. 11. 29.

 

SQL에서 NULL은 "알 수 없는 값" 또는 "값이 없음"을 의미합니다.

그럼 Null이라는 데이터값을 찾으려면 어떤 키워드를 써야할까?

-- 재고가 null인 데이터를 가져오세요.

SELECT *
FROM books b
WHERE stock_quantity = null ?????

 

여태 문자, 숫자를 = 로 불러왔으니 null도 = 일까? No!

SELECT *
FROM books b
WHERE stock_quantity is null;

 

이전글에서도 like는 문장이니까 not을 사용했던거처럼

null은 문장이기때문에 is, is not을 사용합니다.

 

 


그렇다면 True, False같은 논리값은?

Boolean을 지원하는 데이터베이스 시스템에서는 

SELECT * FROM Orders WHERE IsShipped IS TRUE;
SELECT * FROM Orders WHERE IsShipped IS FALSE;

IS TRUE, IS FALSE로 가능하다.

 

MySQL에서

BOOL 또는 BOOLEAN 데이터 타입이 내부적으로 TINYINT(1)[ True(1),False(0) ]로 처리되기때문에

is보다는 =으로 찾는쪽이 권장된다.

(is 로도 불러오기는 가능! 권장사항임)

SELECT * FROM users WHERE is_active = 1; -- TRUE를 검색
SELECT * FROM users WHERE is_active = 0; -- FALSE를 검색