728x90
반응형
CASE
CASE WHEN ELSE END
조건이 맞으면 THEN절을 수행하고 아니라면 ELSE문을 수행한다.
WHEN, ELSE, END절에 서브쿼리를 넣어 사용할 수 있다.
CASE WHEN 조건
THEN 값 OR SQL
ELSE 값 OR SQL
END
CASE 예시
SELECT CASE WHEN SAL_CD = '100001' THEN '기본급'
WHEN SAL_CD = '100002' THEN '상여금'
WHEN SAL_CD = '100003' THEN '특별상여금'
WHEN SAL_CD = '100004' THEN '야근수당'
WHEN SAL_CD = '100005' THEN '주말수당'
WHEN SAL_CD = '100006' THEN '점심식대'
WHEN SAL_CD = '100007' THEN '복지포인트'
ELSE '유효하지 않음'
END SAL_NM
FROM TB_SAL
DECODE
DECODE(표현식, 비교값1, 결과값1, 비교값2, 결과값2 ...)
표현식이 비교값1과 같으면 결과값1, 표현식이 비교값2과 같으면 결과값2
표현식과 비교값을 비교하여 결과 값을 리턴한다.
DECODE 예시
SELECT DECODE(SAL_CD, '1400001', '기본급', '100002', '상여금', '기타') AS SAL_NM FROM TB_SAL;
728x90
반응형
'개발기록 > Oracle & SQLD' 카테고리의 다른 글
SQL 조인, INNER JOIN, NATURAL JOIN, USING, ON, CROSS JOIN, OUTER JOIN (0) | 2022.05.24 |
---|---|
집계함수 / COUNT, SUM, AVG, MAX, MIN, STDDEV, VARIAN (0) | 2022.05.17 |
SQL 함수, 단일행 함수(문자, 숫자, 날짜, 변환, NULL) (0) | 2022.05.17 |
SQL 구분 순서, GROUP BY, HAVING 설명 (0) | 2022.05.17 |
Oracle 별칭(Alias) 사용법 및 예제 (0) | 2022.05.01 |
댓글