Oracle函数——COALESCE

COALESCE

含义:COALESCE是一个函数, (expression_1, expression_2, …,expression_n)依次参考各参数表达式,遇到非null值即停止并返回该值。如果所有的表达式都是空值,最终将返回一个空值。使用COALESCE在于大部分包含空值的表达式最终将返回空值。
用法:COALESCE(expression_1, expression_2, ...,expression_n)
例子

SELECT COALESCE(NULL,NULL,3,4,5) FROM dual  

其返回结果为:3

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

注意
空值加任何值都是空值,空值 乘任何值也都是空值,依此类推。
所有表达式必须是相同类型,或者可以隐性转换为相同的类型。

转自 https://www.cnblogs.com/zuiyue_jing/p/10135815.html

发布了1237 篇原创文章 · 获赞 317 · 访问量 227万+

猜你喜欢

转载自blog.csdn.net/huangbaokang/article/details/105692024