posted by 구름너머 2004. 12. 3. 09:23
문법
NVL2(expr,expr1,expr2);


expr의 값이 null이 아닐 경우에는 expr1의 값을 반환 하고요 null일 경우에는 expr2의 값을 반환 합니다.



예제)

-- 보통 SQL문을 실행 했을 경우
SQL> SELECT ename, comm FROM emp;

ENAME COMM
---------------- ----------
SMITH
ALLEN 300
WARD 500
JONES
MARTIN 1400
BLAKE
CLARK
SCOTT
KING
TURNER 0
ADAMS



-- NVL함수를 사용 했을 경우

SQL>SELECT ename, NVL(comm, 0) comm FROM emp;

ENAME COMM
---------------- ----------
SMITH 0
ALLEN 300
WARD 500
JONES 0
MARTIN 1400
BLAKE 0
CLARK 0
SCOTT 0
KING 0
TURNER 0
ADAMS 0



-- NVL2함수를 사용 했을 경우

SQL>SELECT ename, NVL2(comm, 1, 0) FROM emp;


ENAME COMM
--------------- ----------
SMITH 0
ALLEN 1
WARD 1
JONES 0
MARTIN 1
BLAKE 0
CLARK 0
SCOTT 0
KING 0
TURNER 1
ADAMS 0

'ORACLE' 카테고리의 다른 글

Process죽이기...  (0) 2004.12.16
테이블명, 컬럼명 변경 방법?  (0) 2004.12.13
PL/SQL 에서 NULL 체크하기  (0) 2004.11.30
SQL*Plus AUTOTRACE  (0) 2004.10.15
EXPLAIN PLAN(실행계획  (0) 2004.10.15