本文主要介绍oracle的nvl函数的使用方法,想了解的朋友可以参考一下。
Oracle Nvl函数
Nvl()函数
从两个表达式中返回一个非空值。
语法
NVL(电子表达式1,电子表达式2)
参数
电子表达式1,电子表达式2
如果eExpression1的计算结果为null,NVL()返回eExpression2。如果eExpression1的求值结果不为空,则返回eExpression1。EExpression1和eExpression2可以是任何数据类型。如果eExpression1和eExpression2的结果都为NULL,则NVL()返回。空.
返回值类型
类型、日期类型、日期时间类型、数值类型、货币类型、逻辑类型或空值。
解释
当空值不受支持或不相关时,可以使用NVL()从计算或运算中移除空值。
选择nvl(a.name, empty )作为学生a加入学校b的名称。
注意:两个参数的类型应该匹配
问:什么是NULL?
答:当我们不知道具体数据是什么,也就是未知的时候,可以用NULL,
我们称之为null。在ORACLE中,包含空值的表列的长度为零。
ORACLE允许任何数据类型的字段为空,但以下两种情况除外:
1.主键字段,
2.定义了NOT NULL限制的字段
描述:
1.相当于没有价值,默默无闻。
2.NULL不同于0、空字符串和空格。
3.空值加、减、乘、除,结果还是空。
4.NULL由NVL函数处理。
5.比较时使用关键字“is null”和“is not null”。
6.空值无法索引,查询时可能会找不到一些符合条件的数据。
Count(*),使用nvl(列名,0)处理然后检查。
7.排序时比其他数据大(索引默认降序排序,小大),
所以空值总是在最后。