Programming/오라클[SQL]
오라클[sql] NVL / NVL2
콩king
2022. 8. 22. 12:08
NVL() / NVL2()
- NULL 처리하기 위한 함수 NVL
- NVL() / NVL2() : NULL 을 0 또는 다른 값으로 변환하기 위한 사용하는 함수
- 오라클에만 있음
NVL ( , )
- NVL (컬럼, A ) : 컬럼이 NULL 아니면 컬럼, NULL 이면 A 출력
NVL2 ( , , )
- NVL2(컬럼, A, B) : 컬림이 NULL 아니면 A 출력, NULL 이면 B 출력
예제
SELECT ename, sal, comm, sal+comm
FROM emp
WHERE deptno = 30;
- * comm 에 있는 null 때문에 산술연산이 제대로 되지않습니다.
SELECT ename, sal, comm
, sal+comm
, sal+NVL(comm, 0) AS "NVL()"
, NVL2(comm, sal+comm, sal) AS "NVL2()"
FROM emp
WHERE deptno = 30;