Oracle null判断并替换空值

  可用 NVL(), IFNULL() ,COALESCE(),DECODE() 函数html

1.NVL()express

从两个表达式返回一个非 null 值。
语法
NVL(eExpression1, eExpression2)
参数
eExpression1, eExpression2函数


若是 eExpression1 的计算结果为 null 值,则 NVL( ) 返回 eExpression2。若是 eExpression1 的计算结果不是 null 值,则返回 eExpression1。eExpression1 和 eExpression2 能够是任意一种数据类型。若是 eExpression1 与 eExpression2 的结果皆为 null 值,则 NVL( ) 返回 .NULL.。

返回值类型

字符型、日期型、日期时间型、数值型、货币型、逻辑型或 null 值post

 

2.NULLIF()url

若是两个指定的表达式相等,则返回空值。
语法NULLIF ( expression1 , expression2 )
参数expression1, expression2
常量、列名、函数、子查询或算术运算符、按位运算符以及字符串运算符的任意组合。
返回类型与第一个 expression1 相同。

spa

NULLIF与DECODEcode

           NULLIF(param,0)等效于DECODE(param,0,null,param):若是param为0,则返回null,不然返回param。

htm

3.COALESCE()blog

Oracle COALESCE函数语法为COALESCE(表达式1,表达式2,...,表达式n),n>=2,此表达式的功能为返回第一个不为空的表达式,若是都为空则返回空值。字符串

注意:全部表达式必须为同一类型或者能转换成同一类型。

 

4.DECODE()

decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值)

 

该函数的含义以下:


IF 条件=值1 THEN
    RETURN(返回值1)
ELSIF 条件=值2 THEN
    RETURN(返回值2)
    ......
ELSIF 条件=值n THEN
    RETURN(返回值n)
ELSE
    RETURN(缺省值)
END IF

 

参考:https://www.2cto.com/database/201303/193911.html

    ORACLE中DECODE的用法(例子)

    Oracle的NVL函数用法

    用 ISNULL(), NVL(), IFNULL() and COALESCE() 函数替换空值

相关文章
相关标签/搜索