DB/SQL 기초

NULL 기본함수 간단하게 익히는 법

케이(kay) 2022. 8. 1. 02:29
반응형
SMALL

대체값으로 NULL값 제거(인수가 두개인 경우)

nvl은 null value의 약자이다.
아래 문법은 null value~? if null~? is null~?
그게 널이야? 널이면 널이고 아니면 널로 바꾸자! 
라고 외우면 된다.

ORACLE: NVL(col1,100)
MYSQL : IFNULL(col1,100)
MSSQL : ISNULL(col1,100)

--(단, = NULL과 같은 연산자 사용 X)

col1이 null이면 100.

 

 

대체값으로 NULL값 제거(인수가 세개인 경우)

마찬가지로 null value~?

NVL2(col1,100,200)

col1이 null이 아니면 100 null이면 200.

 

 

비교해서 같으면 NULL값으로 처리

이번엔 명령문이다.
null 로 바꿔 if ~ 라면

NULLIF(v1,v2)

v1과 v2이 다르면 v1, 같으면 null.

 

 

NULL 이 아닌 최초의 값으로 반환

이건 그냥 외우자

발음과 스펠을 잘 알아두자
코알레스...

COALESCE(v1,v2…vn)

-- 입사년도가 다른 세명의 초봉을 구할때
SELECT 이름, COALESCE(1월_급여, 2월_급여, 3월_급여, ...) AS 초봉
FROM 급여;

null이 아닌 최초의 vn값 찾기.

모두 null이면 null.

 

https://images.app.goo.gl/6bo1rG9TJR7i7hv96

→ 행 단위로 조회한다.
1행: col1
2행: col1 이 null 이면 -> col2

3행: col1 이 null 이면 -> col2 

3행: col1 이 null 이면 -> col2 가 null 이면 -> col3

...

반응형
LIST