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;(正确)


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部