首页 > 数据库技术 > 详细

ORACLE中NVL、NVL2函数的用法

时间:2019-02-23 17:53:39      阅读:161      评论:0      收藏:0      [点我收藏+]

NVL和NVL2两个函数虽然不经常用,但是偶尔也会用到,所以了解一下。

语法:

--如果表达式1为空则显示表达式2的值,如果表达式1不为空,则显示表达式1的值
NVL(表达式1,表达式2);
--如果字段1为空,则显示字段2的值,如果字段1不为空则显示字段1的值
NVL(字段1,字段2);

--如果表达式1为空,则显示表达式2的值,如果不为空则显示表达式3的值
NVL2(表达式1,表达式2,表达式3)
--如果字段1为空则显示字段2的值,如果字段1不为空则显示字段3的值
NVL2(字段1,字段2,字段3)

 

比如有表:SYS_USER_INFO,表中有其中三个字段:REAL_NAME,NICK_NAME,NET_NAME。

需求;如果REAL_NAME为空,则查询NET_NAME,不为空则查询REAL_NAME:

SELECT NVL(REAL_NAME,NET_NAME) AS NAME FROM SYS_USER_INFO

在项目中有时需要在查询时预留几个备用字段,也可以通过NVL2来实现,如:

NVL2(SPARE,‘‘,‘‘) AS SPARE

 

 这样无论如何都会有个SPARE为空的字段。

ORACLE中NVL、NVL2函数的用法

原文:https://www.cnblogs.com/whx20100101/p/10423458.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!