[SQL] 일반함수 DECODE

·2025년 7월 3일
0

SQL

목록 보기
50/126

예제 답

select ename, deptno, decode(deptno, 10, 300,
                                     20, 400, 0) as 보너스
 from emp;

부서번호 10번 --> 300 출력
부서번호 20번 --> 400 출력
나머지 부서번호 --> 0 출력

💡 decode --> if문 느낌
de -> 디카페인 할 때 de
code가 없다는 뜻


문제1. 이름, 월급, 직업, 보너스를 출력하시오. 보너스는 직업이 SALESMAN 이면 5000을 출력하고 직업이 ANALYST 면 4000을 출력하고 나머지 직업은 100을 출력하시오

select ename, sal, job, decode(job, 'SALESMAN', 5000,
                                    'ANALYST', 4000, 100) as 보너스
 from emp;

문제2. 이름, 부서번호, 관리자 여부를 출력하는데 부서번호가 10번이면 문자로 관리자 라고 출력하고 그렇지 않으면 비관리자라고 출력하시오

select ename, deptno, decode(deptno, 10, '관리자', '비관리자') as "관리자 여부"
 from emp;

0개의 댓글