nvl( ) 函数
从两个表达式返回一个非 null 值。
语法
NVL(eExpression1, eExpression2)
参数
eExpression1, eExpression2
如果 eExpression1 的计算结果为 null 值,则 NVL( ) 返回 eExpression2。如果 eExpression1 的计算结果不是 null 值,则返回 eExpression1。eExpression1 和 eExpression2 可以是任意一种数据类型。如果 eExpression1 与 eExpression2 的结果皆为 null 值,则 NVL( ) 返回 .NULL.。
返回值类型
字符型、日期型、日期时间型、数值型、货币型、逻辑型或 null 值
说明
在不支持 null 值或 null 值无关紧要的情况下,可以使用 NVL( ) 来移去计算或操作中的 null 值。
注意:两个参数得类型要匹配
注意:PLSQL中赋值时 v_var := NVL(eExpression1, eExpression2);
v_var 和 eExpression1 的类型要匹配,否则执行会抛出类型转换错误的异常。(编译成功,但不能运行,直接抛出异常)
v_var 和 eExpression2 的类型不需要匹配,eExpression2 会存在隐式转换,但是在转换失败的时候会抛出异常。(编译成功,能运行,转换错误时会抛出异常)
从两个表达式返回一个非 null 值。
语法
NVL(eExpression1, eExpression2)
参数
eExpression1, eExpression2
如果 eExpression1 的计算结果为 null 值,则 NVL( ) 返回 eExpression2。如果 eExpression1 的计算结果不是 null 值,则返回 eExpression1。eExpression1 和 eExpression2 可以是任意一种数据类型。如果 eExpression1 与 eExpression2 的结果皆为 null 值,则 NVL( ) 返回 .NULL.。
返回值类型
字符型、日期型、日期时间型、数值型、货币型、逻辑型或 null 值
说明
在不支持 null 值或 null 值无关紧要的情况下,可以使用 NVL( ) 来移去计算或操作中的 null 值。
注意:两个参数得类型要匹配
注意:PLSQL中赋值时 v_var := NVL(eExpression1, eExpression2);
v_var 和 eExpression1 的类型要匹配,否则执行会抛出类型转换错误的异常。(编译成功,但不能运行,直接抛出异常)
v_var 和 eExpression2 的类型不需要匹配,eExpression2 会存在隐式转换,但是在转换失败的时候会抛出异常。(编译成功,能运行,转换错误时会抛出异常)