Oracle 如何有效替换空值(oracle 空值替换)
有时在数据库中空值只是一个占位符,例如某个字段未填写,但是它不应该给查询结果造成偏差影响,Oracle提供了is null函数和空值函数nvl的用法来有效的替换空值,让我们可以根据实际情况让查询有更准确的结果。
一:is null函数
is null函数是用来检测表达式的值是否为空的函数,如果为空返回TRUE,如果不为空返回false。is null函数的使用方法就像其他函数一样,但是其参数只有一个,就是需要进行检测的表达式,例如:
select * from person where tel is null ;
上面的语句会查询person表中tel字段是空值的所有记录。
二:nvl函数
nvl函数是oracle提供的使用最多的空值函数,nvl函数可以根据表达式是否为空,如果为空再给定一个替代值(可以不能为空),例如:
select nvl(tel,’暂无电话信息’) from person;
上面的语句查询person表中tel字段,但是如果某条记录未填写电话,那么就会显示“暂无电话信息”而不是空的结果。
本文介绍的is null和nvl函数仅仅是oracle提供的处理空值的常用函数,但是这两个函数实际上就可以非常有效的替换空值了。所以,要有效的替换数据库中的空值,可以使用is null和nvl函数。