select EMPNO, ENAME, JOB, SAL, COMM, DEPTNO, case when job='사원' then '사원입니다.' when job='부장' then '부장입니다.' else '' end as 'test' from emp
--이렇게 쿼리를 짜면 데이터가 나옵니다.
EMPNO | ENAME | JOB | SAL | COMM | DEPTNO | test |
1001 | 정김사랑 | 사원 | 300 | NULL | 20 | 사원입니다. |
1002 | 한예슬 | 대리 | 250 | 80 | 30 | |
1003 | 오지호 | 과장 | 500 | 100 | 30 | |
1004 | 이병헌 | 부장 | 600 | NULL | 20 | 부장입니다. |
1005 | 신동협 | 과장 | 450 | 200 | 30 | |
1006 | 장동건 | 부장 | 480 | NULL | 30 | 부장입니다. |
1007 | 이문세 | 부장 | 520 | NULL | 10 | 부장입니다. |
1008 | 감우성 | 차장 | 500 | 0 | 30 | |
1009 | 안성기 | 사장 | 1000 | NULL | 20 | |
1010 | 이병헌 | 과장 | 500 | NULL | 10 | |
1011 | 조향기 | 사원 | 280 | NULL | 30 | 사원입니다. |
1012 | 강혜정 | 사원 | 300 | NULL | 20 | 사원입니다. |
1013 | 박중훈 | 부장 | 560 | NULL | 20 | 부장입니다. |
1014 | 조인성 | 사원 | 250 | NULL | 10 | 사원입니다. |
이렇게 나옵니다 case when 절을 사용하면요
즉, job이라는 컬럼의 특정값
when job='사원'
when job='부장'
이렇게 했을 경우에
사원입니다.
부장입니다.
라는 데이터를 뿌려주게 되어 있습니다.
여기까진 간단합니다.
하지만 job컬럼이 많아 져서
부장1, 부장1, 부장2-2,부장 2-2
사원 3, 사원3, 사원 3-1, 사원 3-1
이렇게 무수히 많을 경우
무수한 job데이터에
when job='사원1'
when job='사원2'
when job='사원3' ..... 이렇게 할 수 가 없습니다.
그러므로 동일한 컬럼 데이터에 한에서
같은 job끼리
사원1입니다...
사원1-1입니다..
사원2입니다..
이런식으로 쿼리를 짜고 싶은데 이거 가능한가요?