All thing of the world!

Oracle DECODE 설명 : 오라클 함수 본문

IT/Oracle DBMS

Oracle DECODE 설명 : 오라클 함수

WorldSeeker 2021. 4. 6. 09:17

1. 함수의 목적 

    Oracle DECODE는 첫번째 인수 expr을 다음 인수 search와 일치하면 result값으로 반환한다.
    decode는 '풀어내다'라는 뜻이고 case와 동일한 역활을 한다.

2. 샘플을 통한 개념 퀵뷰

f1이 1이면 '1'을 반환, 2이면 '2'를 반환하고 그 이외는 ''로 반환

select decode(f1, 1,'1',2,'2','')
from (select 1 f1 from dual
          union all
          select 2 f2 from dual)
  ; 

DE
--
1
2  

3. 사용방법  


4. 함수 PARAMETER 설명

[expr]
입력 파라미터로 풀어낼 컬럼을 입력한다.

[search]
expr이 어떤 값과 일치하는지 찾아내려고 할 때 일치하는 값을 적는 부분이다.

[result]
search값과 일치할 때 표시할 값을 정의하는 부분이다.

[default]
expr이 'search'와 일치하는 값이 없을 경우 기본으로 출력되는 값을 정의하는 부분이다. 

5. 다양한 샘플표현

example1) employees 테이블에서 department_id=60이면 'sales'로 표현하고, department_id=90이면 'it'로 표현해서 조회

select employee_id, decode(department_id,60,'sales',90,'it','else department')
    from employees
    where 1=1
    and rownum<5;

EMPLOYEE_ID DECODE(DEPARTMENT_ID,60,'SALES
----------- ------------------------------
        100 it
        101 it
        102 it
        103 sales

 

Comments