DECODE 문이 IF문이라면, CASE문은 SWITCH 문이다.
[형식]
CASE 컬럼명 | 표현식 WHEN 조건식1 THEN 결과1
WHEN 조건식2 THEN 결과2
.......
WHEN 조건식n THEN 결과n
ELSE 결과
END
[예제]
SELECT CASE WHEN SALARY <= 30000000 THEN 'D'
WHEN SALARY BETWEEN 30000001 AND 50000000 THEN 'C'
WHEN SALARY BETWEEN 50000001 AND 70000000 THEN 'B'
WHEN SALARY > 70000000 THEN 'A' END AS SALARY,
COUNT(*) AS CNT
FROM TEMP
GROUP BY
CASE WHEN SALARY <= 30000000 THEN 'D'
WHEN SALARY BETWEEN 30000001 AND 50000000 THEN 'C'
WHEN SALARY BETWEEN 50000001 AND 70000000 THEN 'B'
WHEN SALARY > 70000000 THEN 'A' END
ORDER BY SALARY ASC
;
'Dev. Database > Oracle' 카테고리의 다른 글
[오라클] OPTIMIZER 개요 및 구조 (0) | 2015.07.11 |
---|---|
[오라클] 테이블 구조(스키마) 확인 (0) | 2015.07.10 |
VIEW - 테이블을 비추는 창 (0) | 2015.07.05 |
서브쿼리 예제 (0) | 2015.07.05 |
[오라클] 그룹/데이터형 변환/날짜/숫자 처리 함수 (0) | 2015.07.02 |