oracle中NVL函数的使用


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

例如:下面返回的是123

select nvl('123','456') from dual

又例如:下面返回的是456

select nvl(null,'456') from dual

其实可以把这个函数当作默认值的一个处理,例如上面的sql,可以理解为默认一个值为456

 

 

其他两个函数

================================================================================

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

例如:下面返回222

select nvl2('111','222','333') from dual

又例如:下面返回333

select nvl2(null,'222','333') from dual

 

 

NULLIF:如果exp1和exp2相等则返回空(NULL),否则返回第一个值

例如:下面返回一个空值

select NULLIF('111','111') from dual

又例如:下面返回111

select NULLIF('111','1111') from dual

而且两个值的数据类型要一致,不然会报错

 

 

参考:https://www.cnblogs.com/zrui-xyu/p/4819712.html


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM