Oracle数据库中NULL值


我们在不知道具体有什么数据的时候,也即是未知,可以用null,我们称它为空,在Oracle中含有空值的表的列长度为零。

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,和其他的类型是没有可比性的

相关内容