Oracle函数——COALESCE
COALESCE
- 含义:COALESCE是一个函数, (expression_1, expression_2, ...,expression_n)依次参考各参数表达式,遇到非null值即停止并返回该值。如果所有的表达式都是空值,最终将返回一个空值。使用COALESCE在于大部分包含空值的表达式最终将返回空值。
- 用法:COALESCE(expression_1, expression_2, ...,expression_n)
- 例子
1.SELECT COALESCE(NULL,NULL,3,4,5) FROM dual
其返回结果为:3
2.SELECT A.ID,SUM(COALESCE(A.SHUL,0)+COALESCE(A.PZSHUL,0)) from t_order as A group by A.ID
这样就不会因为数据库中的值为NULL而计算错误 - 返回值:返回第一个非NULL表达式的类型
- 扩展
COALESCE(expression1,...n) 与此 CASE 函数等价: CASE WHEN (expression1 IS NOT NULL) THEN expression1 ... WHEN (expressionN IS NOT NULL) THEN expressionN ELSE NULL
- 注意
- 空值加任何值都是空值,空值 乘任何值也都是空值,依此类推。
- 所有表达式必须是相同类型,或者可以隐性转换为相同的类型。
- Next