group by 절에서 rollup(column1,.. )의 형태로 사용할 수 있다고 알려져 있습니다.
MySQL 8.0.26 에서는 작동하지 않았습니다.
select b.dname, a.job, count(*) as emp_cnt, sum(a.sal) as sal_sum
from emp a,dept b
where b.deptno = a.deptno
group by dname,job with rollup;
위 예문과 같이 with 절을 삽입하여 rollup 옵션을 적용시킬 수 있습니다.
group by 컬럼을 그대로 이용합니다. 다음은 결과표입니다. 잘 구동되네요!
ACCOUNTING | CLERK | 1 | 1300.00 |
ACCOUNTING | MANAGER | 1 | 2450.00 |
ACCOUNTING | PRESIDENT | 1 | 5000.00 |
ACCOUNTING | 3 | 8750.00 | |
RESEARCH | ANALYST | 2 | 6000.00 |
RESEARCH | CLERK | 2 | 1900.00 |
RESEARCH | MANAGER | 1 | 2975.00 |
RESEARCH | 5 | 10875.00 | |
SALES | CLERK | 1 | 950.00 |
SALES | MANAGER | 1 | 2850.00 |
SALES | SALESMAN | 4 | 5600.00 |
SALES | 6 | 9400.00 | |
14 | 29025.00 |
반응형
'MySQL' 카테고리의 다른 글
MySQL - regexp,rlike (0) | 2021.09.29 |
---|---|
MySQL - ratio_to_report 구현 (0) | 2021.09.26 |
MySQL - rownum 구현 (0) | 2021.09.22 |
MySQL - index, view, group by (0) | 2021.08.19 |
MySQL - join, union, sub-query (0) | 2021.08.18 |