[스파르타코딩클럽]데이터분석 과정/SQL
[SQL] ROLLUP_총계, 소계 구하기
doo_
2024. 1. 1. 16:23
- 총계, 소계 구하기
[ ROLLUP 함수 ]
- Rollup함수는 그룹 항목 총합(총계)이나, 각 그룹 별 중간합계(소계)를 구할 때 사용한다.
- 이때 합계값만 추가하는 거라 나머지 필드 이름 자리에는 NULL값이 들어간다.
예시 ) MySQL : A, B with rollup / ORACLE : rollup( A, B )
select Category ,sub_category , sum(Amount)
from ecommerce.order_details od
group by category, sub_category with rollup
--------------------------------------------
select Category ,sub_category , sum(Amount)
from ecommerce.order_details od
group by rollup(category, sub_category)
+) [ GROUPING ]
- rollup함수를 사용해 구한 소계, 총계 해당 행을 쉽게 파악할 수 있게 해주는 함수다.
- grouping 기준에서 부분 총계인 경우 1을, 그렇지 않은 경우 0을 리턴한다.
ex.
select Category ,sub_category , sum(Amount), grouping(sub_category)
from ecommerce.order_details od
group by category, sub_category with rollup