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