COALESCE 函数
功能
返回列表中的第一个非空表达式。语法
COALESCE ( expression, expression [ , ...] )参数
expression 任意表达式。标准和兼容性
SQL/92 SQL/92 。SQL/99 核心特性。
示例
下面的语句返回值 34 。SELECT COALESCE( NULL, 34, 13, 0 )
备注如果所有参数均为 NULL ,则 COALESCE 返回 NULL 。
COALESCE(expression1,...n) 与此 CASE 函数等效:CASE WHEN (expression1 IS NOT NULL) THEN expression1...WHEN (expressionN IS NOT NULL) THEN expressionN ELSE NULLEND
尽管 ISNULL 等效于 COALESCE ,但它们的行为是不同的。包含具有非空参数的 ISNULL的表达式将视为 NOT NULL ,而包含具有非空参数的 COALESCE 的表达式将视为 NULL 。使用 COALESCE 的秘密在于大部分包含空值的表达式最终将返回空值(连接操作符 “||”是一个值得注意的例外)。例如,空值加任何值都是空值,空值乘任何值也都是空值,依此类推。这样您就可以构建一系列表达式,每个表达式的结果是空值或非空,这就像一个 CASE 语句,表达式按照顺序进行测试,第一个满足条件的值就确定了结果。