반응형
오늘은 쿼리 작성 시 NULL 체크를 하는 NVL 함수 사용법을 정리해 보겠습니다.
NVL 함수
NVL 함수는 값이 NULL 인경우에 지장 된 값을 출력할 수 있고, 아닌 경우 원래 값을 출력한다.
NVL("값", "지정값")
SELECT * FROM EMP_TABLE
SELECT
EMP_TABLE.ETC
,NVL(EMP_TABLE.ETC,'지정값')
FROM EMP_TABLE
예제를 보면 EMP_TABLE에는 ETC라는 기타 항목이 있는데, 현재 값이 모두 NULL로 되어있다. 하지만 NVL 함수를 이용해서 NULL 경우 '지정값'이 보이게 출력되고 있다.
NVL2 함수
NVL2 함수는 값이 NULL 인 경우에는 지정값1을 출력하고, NULL 아닌 경우에는 지정값2를 출력한다.
NVL2("값","지정값1","지정값2")
SELECT
EMP_TABLE.EMP_NAME
,NVL2(EMP_TABLE.EMP_NAME,'NOT NULL','NULL')
,EMP_TABLE.ETC
,NVL2(EMP_TABLE.ETC,'NOT NULL','NULL')
FROM EMP_TABLE
쿼리 결과를 확인해 보면, 이름은 널이 아니므로(NOT NULL) 지정값1(NOT NULL)을 출력하고 있고, 기타항목은 널이므로(NULL) 지정값2(NULL)을 출력하고 있다.
즉, 해당 칼럼이 NULL인 경우 특정값으로 출력하고 싶을 때는 NVL을 사용하고, NULL 아닌 값까지 지정해서 출력하고 싶으면 NVL2함수를 사용하면 된다.
감사합니다.
반응형
'💻 IT > 📌 DataBase' 카테고리의 다른 글
[DB/SQL] 날짜, 시간 형식 표현하는 법 | TO_CHAR로 표현 (3) | 2024.09.04 |
---|---|
[DB/SQL] ORACLE LISTAGG 함수 사용법 정리 | 행을 열로 바꾸기 (1) | 2024.09.01 |
[DB/SQL] ORACLE WITH절 사용법 정리 (0) | 2024.08.29 |
[DB/SQL] 오라클 PARTITION BY 정리 | 집계함수 사용 | 순위함수 사용 (6) | 2024.08.28 |
[DB/SQL] 데이터베이스 한글 바이트 확인 | ORACLE 한글 | 한글 Byte | DB 한글 확인 | DB 한글 몇바이트 | 오라클 한글 바이트 (0) | 2024.08.14 |