SQL/Oracle

[oracle] NVL(), NVL2()

docc 2021. 8. 11. 17:30
해당 컬럼의 값이 null 값인 경우 특정값으로 출력하고 싶으면 NVL 함수를 사용하고,
null 값이 아닐경우 특정값으로 출력하고 싶으면 NVL2 함수를 사용하면 된다.

NVL()


NVL 함수는 값이 null인 경우 지정값을 출력한다.

- 함수  :  NVL("값", "지정값")

 

 

emp테이블에서 사원이름과 급여와 커미션을 합산하여 출력하기.

SELECT COMM
     , NVL(COMM, 0)  --커미션이 null 이면 "0"
  FROM EMP

 

 

 

NVL2()


NVL2 함수는 null이 아닌경우 지정값1을  출력하고, null인 경우 지정값2을 출력 한다.

- 함수 :  NVL2("값", "지정값1", "지정값2")

SELECT MGR
     , COMM
     , NVL2(MGR, 'Y', 'N')   --매니저가 있으면 "Y", 없으면 "N"
     , NVL2(COMM, 'Y', 'N')  --커미션이 있으면 "Y", 없으면 "N"
  FROM EMP

 

 

 

출처 : https://gent.tistory.com/189