Oracle数据库中NULL值

2014-11-24 17:56:18 · 作者: · 浏览: 1

Oracle可以允许任何一种的数据类型为空。除了(主键字段pk,定义的时候已经增加了not null的限制条件的字段。


说明:


等价于没有任何的值,是未知数。


null和0,空字符串,空格都不同。


对空值做加,减,乘,除等运算的操作结果还是空的。


null值的处理可以采用nvl函数


比较的时候采用is null和is not null


空值是不可以被索引的。所以查询的时候有些符合条件的数据可能查询不出来了。


count(*)中,用nvl处理后进行查询。nvl(列名,0)


排序的时候比其他的数据都大(索引默认的排序是降序排列的,小到大),所以null在最后面


select 1 from dual where null=null; 未选定行


没有查到记录


select 1 from dual where null=''; 未选定行


没有查到记录


select 1 from dual wehre ''=''; 未选定行


没有查询到记录


select 1 from dual where null is null; 未选定行


没有查询到记录


对空值进行加减乘除运算的操作的,结果依旧是空的


select 1+null from dual;


select 1-null from dual;


select 1*null from dual;


select 1/null from dual;


查询到一个记录 ,这个记录就是sql语句中的那个null


Oracle空值的用法,null就是null,和其他的类型是没有可比性的