2014. 2. 6. 17:36

문제

SELECT GROUP_ID, GROUP_NM, DECODE(GROUP_ID, 'TEST', 'A', GROUP_ID) 

FROM AUTO_SET_GROUP


해결

DECODE 는 오라클에서 지원하는 함수로 SELECT 문자 내에서 비교 연산을 수행 ( IF 문 과 비슷)

-> GROUP_ID 가 TEST과 같다면 A를 출력하고 아니면 GROUP_ID 를 출력


1. 합계를 내는 곳에 응용 가능

SUM(DECODE(GROUP, 'A' , 1, 0)

 -> GROUP 이 A면 1, 아니면 0


2. 2중 DECODE 문에 응용 가능

DECODE(GROUP, 'A', DECODE(NAME, 'TEAM_A', 1), 0)

 ->GROUP이 A이면서 NAME이 TEAM_A일 경우 1,  아니면 0 


'2019년 이전 정리 > DB_ORACLE' 카테고리의 다른 글

오라클 nvl  (0) 2014.02.17
Oracle DISTINCT, GROUP BY  (1) 2014.02.07
Posted by hoonihoon