오늘이라도

[Oracle] 5. 숫자/날짜/형 변환 함수 연습 문제, NVL(), NVL2(), COALESCE(), DECODE(), CASE ~ END 본문

취업성공패키지 SW 개발자 교육/Oracle RDBMS

[Oracle] 5. 숫자/날짜/형 변환 함수 연습 문제, NVL(), NVL2(), COALESCE(), DECODE(), CASE ~ END

upcake_ 2020. 4. 27. 21:09
반응형

https://github.com/upcake/Class_Examples

교육 중에 작성한 예제들은 깃허브에 올려두고 있습니다. 

gif 파일은 클릭해서 보는 것이 정확합니다.


 - 숫자/날짜/형 변환 함수 연습 문제 -

▲연습 문제 1

 

▲연습 문제 2

 

▲연습 문제 3

 

 

 - NVL(), NVL2() -

▲NVL(), NVL2() 함수의 필요성

 

▲NVL() 예제 1

 - NVL(대상, NULL일 때 반환 표현)

 - 반환 표현의 데이터 타입과 대상의 데이터 타입이 같아야 한다.

 

▲NVL() 문제 1

 

▲NVL2() 예제 1

 - NVL2(대상, NULL 아닌 경우 반환 값, NULL인 경우 반환 값)

 - NULL 아닌 경우의 반환 값과 NULL인 경우 반환 값의 데이터 타입이 같아야 한다.

 

▲NVL(), NVL2() 문제 1

 

▲NVL(), NVL2() 문제 2

 

 

 - COALESCE() -

▲COALESCE()

 - COALESCE(대상, 대체 표현 1, 대체 표현 2, 대체 표현 3,...)

 - 데이터 값이 NULL인 경우 반환 표현을 여러 개 지정할 수 있는 형태의 함수

 

 

 - 조건문 : DECODE(), CASE ~ END -

▲DECODE() 예제 1

 - DECODE(대상 표현, 비교 데이터 표현 1, 반환 데이터 1

                             비교 데이터 표현 2, 반환 데이터 2,

                             비교 데이터 표현 3, 반환 데이터 3, default 반환 데이터)

 

 

▲CASE ~ END 예제 1

 - CASE ~ END는 DECODE와 달리 다양한 조건의 비교가 가능하다는 장점이 있다.

 - CASE WHEN 조건문 THEN 반환 데이터 1

           WHEN 조건문 THEN 반환 데이터 2

           ELSE 반환 데이터 3

   END

 

▲CASE ~ END 예제 2

 

▲CASE ~ END 예제 3

 

▲조건문 문제 1 

 

▲조건문 문제 2
▲조건문 문제 3

 

반응형