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