티스토리 뷰

IT의 유익/DB

NVL, DECODE 정리

유익이아빠 2016. 10. 31. 16:19

Oracle 함수중에

조회된 null값을 치환하는 함수중에 nvl함수와 Decode함수가 있다. 

NVL은 말그대로 Null Value 의 약자로

nvl(컬럼명,1)의 뜻은 값이 null일 경우 1로 치환, 그렇지 않을 경우 컬럼의 값을 나타냄.

 

 select nvl(a,1) from A : A table로부터 a컬럼에 null이 저장된 값을 1로 치환해서 조회

 

a b
null 1
1 2
2 3
3 null

위의 A 테이블을 위 쿼리로 조회하면

nvl(a,1)
1
1
2
3
decode(컬럼명, A,1, B, 2, 3)의 뜻은 컬럼값이 A이면, 1, B면 2, A,B도 아니면 3으로 치환
 select decode(a,1,참,2,거짓,무효) from A : A table로부터 a컬럼에 1이 저장되어 있으면 참으로 2가 저장되어 있으면 거짓으로 3일 저장되어 있으면 무효 

 

a
1
2
3

위의 A 테이블을 위 쿼리로 조회하면

decode(a,1,참,2,거짓,무효)
거짓
무효

 

728x90
반응형
댓글