Dev study and notes

[SQL] 20200909 sql null/nvl/nvl2/nullif/coalesce/case/decode 본문

studyLog

[SQL] 20200909 sql null/nvl/nvl2/nullif/coalesce/case/decode

devlunch4 2020. 9. 14. 02:01
반응형

null 관련 함수

NVL / NVL2 /coalesce

 

NVL

NVL 함수는 NULL 값을 다른 값으로 바꿀 때 사용하며, 모든 데이터 타입에 적용이 가능하다.

 

NVL2

  • - NVL2라는 함수는 NVL함수의 DECODE 함수의 개념을 합쳤다고 생각하면 쉽습니다.
  • - NVL2(expr, expr1, expr2)
  • - expr의 값이 NULL이 아닐 경우에는 expr1의 값을 반환 하고, NULL일 경우에는 expr2의 값을 반환 한다.

NULLIF

  • - NULLIF(exp1, exp2)
  • - exp1값과 exp2값이 동일하면 NULL을 그렇지 않으면 exp1을 반환
  • - CASE WHEN expr1 = expr2 THEN NULL ELSE expr1 END

COALESCE

  • - COALESCE(expr1,expr2,expr3,…)
  • - expr1이 NULL이 아니면 expr1값을 그렇지 않으면 COALESCE(expr2,expr3,…)값을 반환.
  • - NVL 함수와 비슷하다.

DECODE

  • - DECODE 함수는 조건에 따라 데이터를 다른 값이나 컬럼값으로 추출 할 수 있다.
  • - DECODE(VALUE, IF1, THEN1, IF2, THEN2...) 형태로 사용 할 수 있다.
  • - VALUE 값이 IF1일 경우에 THEN1 값을 반환하고, VALUE 값이 IF2일 경우에는 THEN2 값을 반환한다.
  • - DECODE 함수 안에 DECODE함수를 중첩으로 사용 할 수 있다.

 

 

실습 fn4

 

실습 fn5

 

번외 실습 fn1



CASE 함수

 

가변인자

case 와 decode

 

실습 cond1

 

실습 cod2 나머지 mod

 

 

실습 cond3

 

반응형
Comments