NULL이란?
아직 정의되지 않은 값으로 0 또는 공백과 다르다. (0은 숫자, 공백은 문자)
빈 값 대신 미정 값을 부여할 때 사용한다.
PK, NOT NULL 제약조건이 있는 칼럼에는 NULL을 넣을 수 없다.
WHERE절에서는 IS NULL, IS NOT NULL을 통해 조건을 줄 수 있다.
-- NICKNAME이 NULL인 데이터 조회
SELECT NICKNAME FROM PLAYER WHERE NICKNAME IS NULL;
-- NICKNAME이 NULL이 아닌 데이터 조회
SELECT NICKNAME FROM PLAYER WHERE NICKNAME IS NOT NULL;
NVL(표현식1, 표현식2)
표현식 1의 값이 NULL이면 표현식 2의 값을 출력하는 함수이다.
SELECT NICKNAME, NVL(NICKNAME, '닉네임 없음') FROM PLAYER;
NVL2(표현식1, 표현식2, 표현식3)
표현식 1이 NULL이 아니면 표현식 2, NULL이면 표현식 3의 값을 출력하는 함수이다.
SELECT NICKNAME, NVL2(NICKNAME, '닉네임 있음', '닉네임 없음') FROM PLAYER;
NULLIF(표현식1, 표현식2)
표현식 1이 표현식 2와 같으면 NULL 출력하는 함수이다.
SELECT PLAYER_NAME, NULLIF(PLAYER_NAME, '김성환') FROM PLAYER;
COALESCE(표현식1, 표현식2, ...)
임의의 개수 표현식 중 NULL이 아닌 최초의 표현식을 출력하는 함수이다.
만약, 모든 표현식이 NULL이면 NULL을 출력한다.
SELECT NICKNAME, JOIN_YYYY, COALESCE(NICKNAME, JOIN_YYYY) FROM PLAYER;
'DB > 오라클(Oracle)' 카테고리의 다른 글
[Oracle] 오라클 집계함수(AVG, MAX, MIN, SUM, COUNT) (0) | 2023.11.29 |
---|---|
[Oracle] 오라클 숫자 함수(ABS, SIGN, MOD, CEIL) (0) | 2023.11.28 |
[Oracle] 오라클 LIKE 사용법 (2) | 2023.11.25 |
[Oracle] 오라클 문자열 합치기(CONCAT, ||) (0) | 2023.11.24 |
[Oracle] 오라클 별칭(AS) 사용법 (0) | 2023.11.23 |