ORACLE DECODE
from OTN :DECODE
http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/functions040.htm#SQLRF00631
1. DECODE
A.
컬럼값을 변환하는데 사용
B.
행단위(정확히는 컬럼)로 값을 변환
2. 예제
SQL> conn hr/hr
Connected.
-hr의 regions table을 사용해 진행
SQL> desc regions
Name
Null? Type
-----------------------------------------
-------- ----------------------------
REGION_ID NOT NULL
NUMBER
REGION_NAME VARCHAR2(25)
SQL> select region_id,region_name
2 from regions;
REGION_ID REGION_NAME
---------- -------------------------
1 Europe
2 Americas
3 Asia
4 Middle East and Africa
-Decode 로 REGION_ID 를 이용해 REGION_NAME 과 동일하게 만듦
SQL> select region_id,
2 decode ( region_id, 1,
'Europe',
3 2,
'Americas',
4 3, 'Asia',
5 4, 'Middle
East and Africa',
6 'Unknown')
"Location"
7 from regions;
REGION_ID Location
---------- ----------------------
1 Europe
2 Americas
3 Asia
4 Middle East and Africa
-DECODE 를 사용한 컬럼에 사용한 ALIAS 를
위에서 확인할 수 있다.
3. DECODE 의
활용
A.
하나의 ROW 를 원할 때 /*+ 도큐먼트 추가 & 연결 */