Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 28 |
29 | 30 | 31 |
Tags
- php
- Oracle
- SQL
- 공모주 청약
- jquery
- Stock
- 제이쿼리
- 주식
- java
- 리눅스
- 공모주
- codeigniter
- 자바
- JavaScript
- 6월 공모주 청약 일정
- 코드이그나이터
- 공모주 청약 일정
- 7월 공모주 청약 일정
- 맥
- 주식 청약 일정
- Eclipse
- MYSQL
- html
- 자바스크립트
- 주식 청약
- IPO
- linux
- Stock ipo
- 오라클
- css
Archives
- Today
- Total
개발자의 끄적끄적
[sql/oracle] 오라클 CASE WHEN 표현식 사용법 [펌] 본문
728x90
반응형
[sql/oracle] 오라클 CASE WHEN 표현식 사용법 [펌]
오라클에서 if 문과 비슷한 기능을 하는 DECODE 함수가 있다. 그러나 DECODE 함수는 조건이 많아지면 가독성이 떨어지고 복잡해지며, 가장 큰 문제는 오라클 SQL에서만 사용할 수 있는 비표준 함수이다.
오라클에서 DECODE 함수를 대체할 수 있는 기능이 CASE 표현식이며 가독성이 좋고 더 많은 기능을 제공한다. 조건이 복잡한 경우 DECODE 함수 보다 CASE 표현식을 사용할 것을 권장한다.
오라클 CASE 표현식
CASE 표현식에서 ELSE 부분은 생략이 가능하며, 만족하는 조건이 없으면 NULL을 리턴한다. CASE 표현식은 SELECT 절, WHERE 절, PL/SQL 등 많은 부분에서 사용이 가능하다.
SELECT ename
, deptno
, CASE WHEN deptno = '10' THEN 'New York'
WHEN deptno = '20' THEN 'Dallas'
ELSE 'Unknown'
END AS loc_name
FROM emp
WHERE job = 'MANAGER'
사용_예제_쿼리.txt
0.02MB
사용 예제
예제 1 - 일반적인 CASE 표현식
예제 2 - ELSE를 생략 후 만족하는 조건이 없으면 NULL 리턴
예제 3 - 비교 연산자, 범위 연사자 등 사용이 가능
예제 4 - WHERE 절에 사용 가능
예제 5 - 오라클 내장 함수를 조건으로 사용 가능
예제 6 - 사용자 정의 함수를 조건으로 사용 가능
예제 7 - THEN 절에서 중첩 CASE 등 추가 연산 작업 가능
출처 : gent.tistory.com/311
반응형
'개발 > sql' 카테고리의 다른 글
[sql/oracle] 오라클 최대값 최소값 구하기 (0) | 2020.10.11 |
---|---|
[sql/mysql] utf8 를 utf8mb4로 변환하기 (0) | 2020.10.10 |
[sql/oracle]오라클 오늘 날짜와 특정 날짜를 비교하여 if문으로 조건문 넣기 [펌] (0) | 2020.10.07 |
[sql / oracle] SQL 활용 - 테이블 생성, 날짜 계산 ,CASE WHEN [펌] (0) | 2020.10.07 |
[sql/oracle] 오라클 함수 모음 [펌] (0) | 2020.10.05 |
Comments