使用空值处理函数

 函数:NVL函数,NVL2函数,NULLIF函数,COALESCE等

说明:空值是非常特殊的值,既不能说它不存在,也不能说它是零。

            空值表示一类没有定义的值,具有不确定性。

           当然对于空值的运算也具有特殊性,因为居于不确定性的值无法和一类具有确定性的值进行逻辑或者算数运算,所以oracle提供了一类空值处理函数,通过这些函数实现空值(NULL)的运算。

 

@ is null

@nvl函数:NVL函数使得空值可以进行运算,它是空值转换函数。如果不使用空值转换函数,空值是无法进行运算的。

  NVL函数语法如下

  NVL(expr1,expr2)

规则:如果expr1的值为空值(null),则返回expr2的值,否则返回expr1的值。其表达式expr1和expr2的数据类型必须相同,它们可以是数据类型,字符类型和日期类型。

select  empno,emname,job,mgr,hiredate,sal+nvl(comm,0)

 

@NVL2函数:NVL2函数是对NVL函数的增强

表达式:NVL2(expr1,expr2,expr3)

规则:如果expr1为空,则返回表达式expr3的值,如果expr1不为空,则返回expr2的值,其中expr1可以为任何数据类型,而表达式expr2和expr3为除了LONG数据类型以外的任何数据类型。

select ename,nvl2(comm,comm+sal,sal) from emp;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值