COALESCE 함수는 하나 이상의 연산식 리스트가 인자로 지정되며, 첫 번째 인자가 NULL이 아닌 값이면 해당 값을 결과로 반환하고, NULL이면 두 번째 인자를 반환한다. 만약 인자로 지정된 모든 연산식이 NULL이면 NULL을 결과로 반환한다. 이러한 COALESCE 함수는 주로 NULL 값을 다른 기본 값으로 대체할 때 사용하며, 인자로 지정된 모든 연산식은 서로 동일하거나 변환 가능한 데이터 타입이어야 한다.
COALESCE(expression [, ...])
result :
expression | NULL
COALESCE(a, b)는 다음의 CASE 문장과 같은 의미를 가진다.
CASE WHEN a IS NOT NULL
THEN a
ELSE b
END
SELECT * FROM case_tbl;
=== <Result of SELECT Command in Line 1> ===
a
=============
1
2
3
NULL
--substituting a default value 10.0000 for NULL valuse
SELECT a, COALESCE(a, 10.0000) FROM case_tbl;
=== <Result of SELECT Command in Line 1> ===
a coalesce(a, 10.0000)
===================================
1 1.0000
2 2.0000
3 3.0000
NULL 10.0000