NVL2 함수는 세 개의 인자가 지정되며, 첫 번째 연산식(expr1)이 NULL이 아니면 두 번째 연산식(expr2)을 반환하고, NULL이면 세 번째 연산식(expr3)을 반환한다. 단, 결과로 반환되는 데이터타입은 expr2의 타입을 따르며, expr3의 타입 역시 expr2의 타입으로 변환된다.
NVL2( expr1, expr2, expr3 )
result :
expr2 | expr3
SELECT * FROM case_tbl;
=== <Result of SELECT Command in Line 1> ===
a
=============
1
2
3
NULL
--returning a specific value of INT type
SELECT a, NVL2(a, a+1, 10.5678) FROM case_tbl;
=== <Result of SELECT Command in Line 1> ===
a nvl2(a, a+1, 10.5678)
====================================
1 2
2 3
3 4
NULL 11