📦 데이터 베이스 (DB) 📦/🅾 오라클 DB & SQL
특수 쿼리 CASE, DECODE
Meteora_
2021. 2. 15. 13:13
728x90
CASE는 자바(JAVA)의 SWITCH문과 비슷하다.
DECODE()는 CASE에서 WHEN THEN END 를 생략한것과 비슷하다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
-- CASE ==
SELECT employee_id, first_name, phone_number,
CASE SUBSTR(phone_number, 1, 3)
WHEN '515' THEN '서울'
WHEN '590' THEN '부산'
WHEN '650' THEN '광주'
ELSE '기타'
END as 지역
FROM employees;
SELECT employee_id, first_name, phone_number,
CASE
WHEN SUBSTR(phone_number, 1, 3) = '515' THEN '서울'
WHEN SUBSTR(phone_number, 1, 3) = '590' THEN '부산'
WHEN SUBSTR(phone_number, 1, 3) = '650' THEN '광주'
ELSE '기타'
END AS 지역
FROM employees;
-- DECODE
SELECT employee_id, first_name, phone_number,
DECODE( SUBSTR(phone_number, 1, 3),
'515', '서울',
'590', '부산',
'650', '광주',
'기타') AS 지역
FROM employees;
|
cs |