어쩌면 오라클에서 가장 많이사용하는 함수인


DECODE(), NVL(), NVL2() 함수에 대해서 다루겠습니다.






전부 값을 어떤것으로 치환할때 사용하는건데요


처음에 익숙하지 않아서 그런데


계속 사용하다보면 굉장히 편합니다







1.NVL(컬럼,A)



먼저 NVL()함수입니다.



파라미터는 총 두개입니다.


NVL(컬럼,A)


컬럼이 Null값이면 A값으로 치환해줍니다.


간단하죠..?









2.NVL2(컬럼,A,B)


NVL2()함수입니다.


눈치 채셨다시피


컬럼이 Null이 아니라면 A로 치환해주는것이고요.


컬럼이 Null이면 B로 치환해줍니다.









3.DECODE(컬럼,조건1,값1,조건2,값2,기본값)


DECODE()함수입니다.


간단하게 설명드리면 

프로그래밍에서 switch-case 문과 맥락이 같다고 보시면 됩니다



컬럼에 대하여 조건1을 만족한다면 값1을 출력하고 조건2를 만족한다면 값2를 출력...


DECODE함수에서 개수는 상관이 없습니다.


 그리고 조건에 해당하는 값이 없다면 맨 마지막에 기본 Default 값을 출력하게 할 수 있습니다.






세 함수 모두 SELECT 절에서 사용 가능하며


 중첩 또한 가능합니다.







궁금한점이나 잘못된점 있으면 댓글 주세요~! 피드백하겠습니다.





+ Recent posts