DECODE, CASE WHEN 둘 다 조건에 해당하는 값을 얻고자 할 때 사용(switch case 문 같은 기능)
DECODE
DECODE(expr, cond1, val1, cond2, val2 ..., default_val)
SELECT DEPTNO,
DECODE(DEPTNO, 10, 'ACCOUNTING',
20, 'RESEARCH',
30, 'SALES',
'NO_DEPT') DEPTNAME
FROM DEPT;
CASE ~ WHEN ~ END
CASE expr
WHEN cond1 THEN val1
WHEN cond2 THEN val2
ELSE default_val
END
SELECT DEPTNO,
CASE DEPTNO
WHEN 10 THEN 'ACCOUNTING'
WHEN 20 THEN 'RESEARCH'
WHEN 30 THEN 'SALES'
ELSE 'NO_DEPT'
END as DEPTNAME
FROM DEPT;
'dev > DB' 카테고리의 다른 글
Row chaining, Row migration (0) | 2019.03.15 |
---|---|
SQL 실행 순서 정리 (0) | 2019.03.13 |
DB 함수 모음 (0) | 2019.03.11 |
엔터티, 속성, 식별자의 분류 (0) | 2019.03.11 |
SQL 최적화(옵티마이저, 인덱스) (0) | 2019.03.10 |