oracle的nvl和nvl2是啥函数,两者区别是啥呢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle的nvl和nvl2是啥函数,两者区别是啥呢相关的知识,希望对你有一定的参考价值。

oracle的NVL函数的功能室如果oracle第一个参数为空那么显示第二个参数的值,如果第一个参数的值不为空,则显示第一个参数本来的值。

NVL(E1, E2)的功能为:如果E1为NULL,则函数返回E2,否则返回E1本身。但此函数有一定局限,所以就有了NVL2函数。

NVL2函数的格式如下:NVL2(expr1,expr2, expr3)

含义是:如果该函数的第一个参数为空那么显示第二个参数的值,如果第一个参数的值不为空,则显示第三个参数的值。

NVL2函数:Oracle/PLSQL中的一个函数,NVL2(E1, E2, E3)的功能为:如果E1为NULL,则函数返回E3,若E1不为null,则返回E2。

扩展资料:

NVL函数的功能是实现空值的转换,根据第一个表达式的值是否为空值来返回响应的列名或表达式,主要用于对数据列上的空值进行处理,语法格式如:NVL( string1, replace_with)

如果第一个参数的值为空值,则返回第二个参数的值,否则返回第一个参数的值。如果两个参数的值都为空值,则返回空值。

第一个参数和第二个参数可以是任何类型的数据,但两个参数的数据类型必须相同(或能够由Oracle隐式转换为相同的类型)。

参考资料来源:百度百科--nvl函数

参考技术A NVL2(expr1,expr2,expr3)

  功能:如果参数表达式expr1值为NULL,则NVL2()函数返回参数表达式expr3的值;如果参数表达式expr1值不为NULL,则NVL2()函数返回参数表达式expr2的值。

NVL( string1, replace_with)

  功能:如果string1为NULL,则NVL函数返回replace_with的值,否则返回string1的值,如果两个参数都为NULL ,则返回NULL。本回答被提问者和网友采纳
参考技术B 没什么区别 一般用nvl多 如果不为空,则 参考技术C

推荐一篇对Oracle常用函数进行总结的文章。Oracle学习笔记——常用函数总结

以上是关于oracle的nvl和nvl2是啥函数,两者区别是啥呢的主要内容,如果未能解决你的问题,请参考以下文章

oracle函数NVL,NVL2和NULLIF之间的区别和使用

nvl、nvl2、nullif、coalesce函数的区别

Oracle的nvl函数和nvl2函数

ORACLE NVL 和 NVL2 函数的使用

在oracle数据库中nvl()是啥函数?

oracle NVL,NVL2,NULLIF,COALESCE