본문 바로가기
DBMS/ORACLE

오라클 null 처리 함수(nvl, nvl2, nullif, coalesce)

by 드바 2023. 9. 9.
오라클 NULL 값을 치환하는 여러 함수(NVL, NVL2, NULLIF, COALESCE)에 대한 설명 및 사용법

 

NVL

nvl(a,b)
: a가 null이면 b

SELECT empno
     , ename
     , sal
     , comm
     , NVL(comm, 9999) AS nvl_col  
FROM sk.t1
;

 

 

NVL2

nvl2(a,b,c)
 : a가 null이 아니면 b, null이면 c

SELECT empno
     , ename
     , sal
     , comm
     , NVL2(comm, 'not null', 'is null') As nvl2_col
FROM sk.t1
;

 

 

NULLIF

nullif(a, b)
 : a와 b가 다르면 a, 같으면 null

SELECT empno
     , ename
     , sal
     , comm
     , NULLIF(comm, sal) nullif_col
FROM sk.t1
;

 
 

 

COALESCE

coalesce(a,b,c)
 : a가 null이면 b, b도 null이면 c ...계속 뒤에 붙일 수 있음

SELECT empno
     , ename
     , sal
     , comm
     , COALESCE(comm, sal, 9999) coalesce_col
FROM sk.t1
;

 

 

댓글