NOTICE

[MySQL]null 값 치환

Date : 2017. 2. 28. 17:12 Category : Programming/SQL

col_a

col_b

1000

null

200

100

위와 같은 칼럼(둘 다 int)이 있다고 가정하자.

SELECT COUNT(*) AS cnt FROM #table WHERE col_a > col_b

이렇게 명령을 하였을 경우 결과는 1이 나온다. 물론 처음부터 해당 칼럼을 default는 0, not null을 하면 되겠지만 말이다.

SELECT COUNT(*) AS cnt FROM #table WHERE COALESCE(col_a, 0) > COALESCE(col_b, 0)

COALESCE(칼럼명, 해당 칼럼이 null일 경우 대체할 값)라는 함수를 사용하면 된다.