Null値に関連する関数


1.NVL関数
 
構文:NVL(expr 1,expr 2)
役割:expr 1がnullでない場合はexpr 1を返し、そうでない場合はexpr 2を返します.
以下の例に示すように
SELECT NVL(NULL,1) FROM DUAL;--     :1

SELECT NVL(2,1) FROM DUAL;--     :2

 
2.NVL 2関数
構文:NVL(expr 1,expr 2,expr 3)
役割:expr 1がnullでない場合、expr 2を返します.そうでない場合、expr 3を返します.
次の例に示します.
SELECT NVL2(NULL,1,3) FROM DUAL;--     :3

SELECT NVL2(4,2,1) FROM DUAL;--     :2

3.NULLIF関数
構文:NULLIF(expr 1,expr 2)
作用:2つの式を比較し、等しい場合はnullを返し、そうでない場合は最初の式を返します.
次の例に示します.
SELECT NULLIF(1,1) FROM DUAL;--     : 

SELECT NULLIF(4,2) FROM DUAL;--     :4

 
 
4.COALESCE関数
構文:COALESCE(expr 1,expr 2,...,exprn)
COALESCE(式1,式2,…式n)関数はNVL関数への拡張である.COALESCE関数の機能は,最初の空でないパラメータを返すことであり,パラメータ個数は制限されない.
次の例に示します.
SELECT COALESCE(NULL,NULL,1,2,3) FROM DUAL;--     :1

SELECT COALESCE(NULL,5,3,9) FROM DUAL;--     :5

SELECT COALESCE(8,1,3,9) FROM DUAL;--     :8