사용 방법
CASE WHEN 조건 THEN 리턴값 --만족하는 조건 없을시 NULL 리턴 WHEN 조건2 THEN 리턴값2 ELSE 그 외 -- 생략 가능 END -- 끝낼 때는 END로 끝내준다. -- where절에도 사용이 가능함.
------if 문처럼 사용
SELECT
CASE
WHEN 4 > 5 THEN '4는 5보다 큽니다.' -- CASE의 결과물이 WHEN 의 결과와 같을 때 참이라면 THEN
WHEN 5 > 7 THEN '5는 7보다 큽니다.'
WHEN 3 > 2 THEN '3는 2보다 큽니다.'
ELSE '나는 수학을 몰라요'
END AS "결과"
FROM
dual;
-- 3는 2보다 큽니다.
------- 또는 switch 문처럼 사용
SELECT
CASE 5 - 2 -- CASE 뒤에 비교할 컬럼 입력
WHEN 4 THEN '5-2=4 입니다.' --WHEN 뒤 비교할 값 입력
WHEN 1 THEN '5-2=1 입니다.'
WHEN 3 THEN '5-2=3 입니다.'
ELSE '나는 수학을 몰라요'
END AS '결과'
FROM
dual;
SELECT
DECODE(5-2, 4, '5-2 = 4 입니다',
1, '5-2 = 1 입니다',
3, '5-2 = 3 입니다',
'나는 수학을 몰라요ㅜㅜ') AS "결과" -- 마지막은 else
FROM dual;