数据库
首页 > 数据库> > ORACLE控制处理函数COALESCE()和NVL()

ORACLE控制处理函数COALESCE()和NVL()

作者:互联网

1. 语法

COALESCE ( expression,value1,value2……,valuen)

2.说明

主流数据库系统都支持COALESCE()函数,这个函数主要用来进行空值处理,其参数格式如下:

COALESCE ( expression,value1,value2……,valuen)

COALESCE()函数的第一个参数expression为待检测的表达式,而其后的参数个数不定。

COALESCE()函数将会返回包括expression在内的所有参数中的第一个非空表达式。

如果expression不为空值则返回expression;否则判断value1是否是空值,

如果value1不为空值则返回value1;否则判断value2是否是空值,

如果value2不为空值则返回value2;……以此类推, 如果所有的表达式都为空值,则返回NULL。

COALESCE()函数可以用来完成几乎所有的空值处理,不过在很多数据库系统中都提供了它的简化版,这些简化版中只接受两个变量,其参数格式如下:

MYSQL: IFNULL(expression,value)

MSSQLServer: ISNULL(expression,value)

Oracle: NVL(expression,value)

这几个函数的功能和COALESCE(expression,value)是等价的。

相对于NVL来说,coalesce支持多个参数可以很方便的返回第一个不为空的值,如果改用nvl,就要嵌套很多层

标签:value,空值,COALESCE,value2,value1,ORACLE,NVL,expression,处理函数
来源: https://blog.csdn.net/qq_39997939/article/details/122333476