COALESCE¶
Evaluates and returns the first non-null expression, or NULL
if all expressions are NULL
.
Syntax¶
COALESCE( expr, [, ...] )
Arguments¶
Parameter |
Description |
---|---|
|
Expressions of the same type |
Returns¶
Returns the first non-null argument or NULL
if all expressions are null.
Notes¶
All expressions must have the same type, which is also the type of the result.
See also ISNULL.
ISNULL(x,y)
is equivalent toCOALESCE(x,y)
.
Examples¶
Coalesce¶
master=> SELECT COALESCE(NULL, NULL, NULL, 5);
5
Replacing NULL
values in aggregations¶
In some cases, replacing NULL
values with a default can affect results.
master=> SELECT
. AVG(num_eyes),
. AVG(COALESCE(num_eyes,2)) AS "Corrected average"
.
. FROM (
. VALUES ('Copepod',1),('Spider',8)
. ,('Starfish',5),('Praying mantis',5)
. ,('Human (average)',2),('Eagle',2)
. ,('Horseshoe crab',10),('Kiwi',NULL)
. ,('Fox',NULL),('Badger',NULL)
. ) AS cool_animals (name , num_eyes);
avg | Corrected average
----+------------------
4 | 3