oracle中的nvl函数讲解
最近在使用oracle数据库的时候,使用中遇到oracle中的nvl函数,引用博客地址:http://www.cnblogs.com/zrui-xyu/p/4819712.html
oracle中函数主要有字符串处理函数、数学函数、转换函数等
除此之外,就是一系列的通用函数:NVL,NVL2,NULLIF,COALESCE
1、NVL函数
NVL函数的格式如下:NVL(expr1,expr2)
含义:如果oracle第一个参数为空,那么久显示第二个参数;如果第一个参数不为空,就显示第一个参数本来的值
2、NVL2函数
NVL2函数的格式如下;NVL2(expr1,expr2,expr3)
含义是:如果该函数的第一个参数为空,那么显示第二个参数;如果第一个参数不为空,则显示第三个参数
3、NULLIF函数
NULLIF(expr1,expr2)函数的作用是如果expr1和expr2相等则返回空(NULL),否则返回第一个值
4、Coalesce函数
Coalesce函数的作用是的NVL函数有点相似,其优势是有更多的选项
格式如下:
Coalesce(expr1,expr2,expr3...exprn)
表示可以指定多个表达式的占位符,所有表达式必须是相同类型,或者可以隐性转换为相同的类型。
返回表达式中第一个非空表达式,如有以下语句:select coalesce(NULL,NULL,3,4,5)from dual 其返回结果为:3
如果所有自变量均为NULL,则coalesce返回NULL值
coalesce(expression1,...n)与此case函数等价