본문으로 바로가기

[ORACLE] NVL , NVL2 사용법 및 예제

category ORACLE 2021. 4. 12. 23:00

NVL , NVL 2 사용법 

NVL 함수는 값이 null 인 경우 주고싶은값을 출력한다.

- 함수 : NVL("값","null이면 주고싶은값")

 

NVL2 함수는 값이 null이 아닌경우(X) 첫번째 값을 출력하고, null인경우(O) 두번째 값을 출력한다.

- 함수: NVL2("값","null이 아닌 경우값","null인 경우 값")

 

NVL과 NVL2의 차이점

NVL은 NULL일떄만 주고싶은 값을 설정할수 있지만, NVL2는 NULL일경우와 아닐경우 둘다 판단하여 값을 지정해준다.

하지만 NVL2는 DECODE로 대체 할 수 있지만 같은 동작을 하진않는다고 생각한다. 상황에 따라 쓰길 바란다.

SELECT NVL(MGR,0) AS MGR FROM EMP; 

  -- NVL을 이용한 NULL 값을 0으로 변환 

 

SELECT NVL2(COMM,COMM,0) AS COMM FROM EMP;

 

  --NVL2를 이용한 NULL값은 0으로 기존값은 유지

 

예제 결과 

NVL , NVL2 결과값

'ORACLE' 카테고리의 다른 글

[ORACLE] CASE WHEN THEN 사용법 및 예제  (0) 2021.04.20
[ORACLE] DECODE 의 사용법 및 예제  (0) 2021.04.13