ORACLE DECODE

개발/DATABASE 2009. 9. 4. 13:33

디코드 사용 예 (IF문이라고 생각하면 됨)

// 사용 설명

1. decode(컬럼명, 조건 값, 조건값이 True면, 조건값이 false면) - 단순 if문
컬럼의 값의 조건이 맞으면 true의 값으로 하고 다르면 false값으로 하라 는 뜻

2. decode(컬럼명, 조건1, 1의 결과값, 조건2, 2의 결과값, ..........) - if, else if 문
컬럼의 값이 조건1이면 1의 결과값으로 조건2면 2의 결과값으로 이런식으로 계속해서 늘려 갈수 있다

// 예

SELECT DECODE (SUBSTR(주민등록번호, 6,1), '1', '남', '2', '여') AS '성별' FROM TABLE
7번째 자리 숫자가 1이면 남 2이면 여

SELECT DECODE (SUBSTR(주민등록번호, 6,1), '1', '남', '여') AS '성별' FROM TABLE
7번째 자리 숫자가 1이면 남 아니면 여

SELECT DECODE (SUBSTR(주민등록번호, 6,1), '1', 1, 0) AS '남자인원수' FROM TABLE
7번째 자리 숫자가 1이면 1을 더하고 아니면 0을 더한다(남자일 경우만 카운트 된다)

Posted by ladon
,