728x90
오라클 CASE문 사용 방법
오라클 case when 조건문에 대해서 알아보면
oracle case when 조건문은 우리가 많이 사용하는 if 문과 같은 기능 입니다.
case when은 두가지 방법으로 사용됩니다.
마지막은 꼭 END를 넣어주셔야 합니다. 종종 실수하는 경우가 많습니다.
1. CASE 문 사용하기
WITH TEMP_TB AS (
select '사과' as product , '5' as qty from dual
union all
select '청소기' as product , '10' as qty from dual
union all
select '연필' as product , '15' as qty from dual
)
select
product
, qty
, CASE WHEN qty < 10 then '적음'
WHEN qty > 10 then '많음'
ELSE '보통'
END as 재고
FROM TEMP_TB;
qty 값이 10보다 작으면 재고의 값은 적음
qty 값이 10보다 크면 재고의 값은 많음
qty 값이 그외의 값 이면 보통 입니다.
하나의 대상(칼럼)으로 CASE 문 사용
case 대상(칼럼) WHEN [조건1] THEN [조건1 결과]
WHEN [조건2] THEN [조건2 결과]
ELSE 그의 결과
END
WITH TEMP_TB AS (
select '사과' as product , '5' as qty from dual
union all
select '청소기' as product , '10' as qty from dual
union all
select '연필' as product , '15' as qty from dual
)
select
product
, qty
, CASE product WHEN '사과' then '과일'
WHEN '청소기' then '전자제품'
ELSE '학용품'
END as 분류
FROM TEMP_TB;
WHEN 앞에 칼럼명을 입력하여 WHEN 에 컬럼명을 따로 기입하지 않아도 됩니다.
쿼리가 좀 더 깔끔하게 보입니다.
아래 예제로 비교해보시죠.
CASE product WHEN '사과' then '과일'
WHEN '청소기' then '전자제품'
ELSE '학용품'
CASE WHEN product = '사과' then '과일'
WHEN product = '청소기' then '전자제품'
ELSE '학용품'
같은결과가 나옵니다.
728x90
'Be Smart > SQL' 카테고리의 다른 글
[ORACLE] INDEX 기본 구조와 사용 (0) | 2021.10.20 |
---|---|
[오라클] SQL 서브쿼리 SELECT, FROM, WHERE (0) | 2021.10.19 |
[ORANGE] 오라클 오렌지 단축키 정리 (0) | 2021.10.19 |
[SQL] ORACLE 가운데 공백 제거 (0) | 2021.10.19 |
[SQL] 오라클 INSTR 문자 위치 찾기 및 예제 (0) | 2021.10.19 |
댓글