oracle中null值问题以及滤空函数(nvl)

1、select语句中的null问题:

(1)包含null的表示式都为null

(2)null永远不等于null

(3)如果集合中含有null,不能使用not in,但可以使用in

not in相当于<>all

举例解释:a not in(3,4,null)相当于a!=3 and a!=4 and a!=null,a!=null永远为false

(4)null值在order by中显示:oracle中null最大

把null放到最后:select * from emp order by comm nulls last;

(5)组函数会自动滤空,可以嵌套滤空函数来屏蔽

如:avg()函数不会把null当做一条记录


        
2、oracle的滤空函数(通用函数):
        nvl(a,b):表示a不为null返回nvl,a为null返回b

        nvl2:增强的nvl


    
3、oracle中判空 用is关键字:
        select * from emp where comm = null;(错误)
        select * from emp where comm is null;(正确)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值