oracle中nvl、nvl2、nvlliff函数的使用方法

1.nvl(exp1,exp2);
作用是如果表达式exp1为空则返回exp2表达式,如果exp1表达式不为空则返回exp1表达式。

但nvl函数有一个前提条件是两个参数的数据类型要一样,不然会报错误。如下图由于comm是数字类型,所以第二个参数不能是其它类型

2.nvl2函数语法
nvl2(exp1,exp2,exp3);这个函数需要有三个参数。它的使用是如果exp1为空则返回exp3,如果exp1不为空则返回exp2。

但有一点需要注意的是nvl2函数中exp2与exp3数据类型要一样,不然也会报 错
但nvl2函数另外一点也需要注意,就是当exp2与exp3两个参数数据类型不一样的时候,exp3参数数据类型会转换为exp2数据类型,但前提是可以进行转换才可以,如果不能进行转换是会报错误的

3.nullif函数语法
nullif(exp1,exp2);它的作用是如果exp1与exp2两个参数的值相等则返回空,如果不相等则返回exp1,同样两个参数的数据类型也要一样。

你可能感兴趣的:(Oracle)