SQL

SQL 18(COLUMN을 ROW로 출력하기 / PIVOT)

아리빠 2023. 5. 19. 17:17

1. 부서 번호, 부서 번호별 토탈 월급을 pivot 문을 사용하여 가로로 출력하기

 

pivot 문을 사용하면, decode를 이용해 출력한 결과보다 더 간단하게 만들어 줄 수 있다.

만약 decode로 작성한다면 

sum(decode(deptno, 10, sal) as "10"
sum(decode(deptno, 10, sal) as "20"
sum(decode(deptno, 20, sal) as "30"

위와 같은 코드가 들어가야 한다

 


2. 문자형 데이터 다루기- pivot문을 이용해 직업과 직업별 토탈 월급을 가로로 출력하기 

 

최대한 간단히 표현해보고자 하다가 오류가 났다.

오류의 연속,,,

job을 나열하기 싫어서 걸어준 조건문인데 잘못되었다,,

 

성공,,,

job은 애초에 select로 들어가는 걸로,,,

 

PIVOT 문을 사용할 때는 FROM  절에 괄호를 사용해서 특정 컬럼만을 선택해야한다

from emp 는 에러 발생

반드시 괄호안에 결과에 필요한 컬럼만 선택하는 쿼리문 작성