NVL:NVL是如果NULL, 则取指定值
例:nvl(lilei08,0)
NVL(lilei08, 0) 的意思是 如果 lilei08是NULL, 则取 0值
NVL2 :NVL2 (expr1, expr2, expr3) expr1不为NULL,返回expr2;为NULL,则返回expr3
例: SELECT nvl2('abc','abcd','abcde') FROM dual;
NVL2('ABC','ABCD','ABCDE')
--------------------------
abcd
SELECT nvl2('','abcd','abcde') FROM dual;
NVL2('','ABCD','ABCDE')
NULLIF :NULLIF (expr1, expr2) -->相等返回NULL,不等则返回expr1
SQL> SELECT nullif('abc','abc') FROM dual;
NULLIF('ABC','ABC')
-------------------
SQL> SELECT nullif('abc','abcd') FROM dual ;
NULLIF('ABC','ABCD')
--------------------
abc
SQL> SELECT nullif('1',1) FROM dual; -- 注意类型要一致
SELECT nullif('1',1) FROM dual
ORA-00932: inconsistent datatypes: expected CHAR got NUMBER