본문 바로가기
SQL/Oracle

오라클 ROLLUP 개념 및 예제

by wakestand 2020. 11. 23.
반응형

오라클에서 ROLLUP은

소계, 합계를 자동으로 뽑을 때 사용하는데

GROUP BY 후 기준으로 사용할 컬럼을 ROLLUP(컬럼)

으로 묶어주는 식이 되겠다

 

위 예제를 보면 해당되는 컬럼의 값이 쭉 나오고

소계, 합계가 나오는 것이 보인다

 

ROLLUP 이전에는 소계, 합계를 구하려면

CONNECT BY를 이용해서 쿼리를 길게 뽑아야 했는데

ROLLUP을 이용하면 컬럼만 지정해줘도 알아서 뽑아주게 된다

 

실제 ROLLUP을 이용해 소계 합계를 뽑을 때
ROLLUP만 사용하면 해당 컬럼이

정확히 소계, 합계에 해당하는지 분간이 어렵기 때문에

GROUPING 같이 사용하게 되는데

 

해당 예제는 아래 글에서 확인해주면 되고

 

오라클 ROLLUP을 이용해 소계 합계 구하는 방법

오라클에서는 ROLLUP을 이용해 GROUP BY로 분류한 전체 ROW와 소계, 총계를 구할 수 있는데 일단 GROUPING(컬럼)을 사용해 일반 ROW인지 소계, 총계에 속하는 ROW인지 분류가 가능한데 GROUPING 사용하는 방

wakestand.tistory.com

ROLLUP은 소계, 합계를 뽑을 때

사용한다고 기억해두면 되겠다

 

마지막으로 예제에 사용한 코드는 아래와 같다

 

  SELECT JOB, SAL FROM EMP
   WHERE JOB IN ('CLERK', 'MANAGER')
GROUP BY ROLLUP(JOB, SAL)
반응형

댓글