SELECT exam_id,start_month,month_cnt,
sum(month_cnt) over (
partition by
exam_id
order by start_month asc
# 窗口函数over()中如果使用排序,则前面的聚合函数按照当前行为最后一行进行聚合
) as cum_exam_cnt
from
(
select
exam_id,
DATE_FORMAT(start_time, '%Y%m') as start_month,
COUNT(start_time) as month_cnt
from
exam_record
group by exam_id,start_month
order by start_month
) as t1
group by exam_id,start_month
order by exam_id,start_month

京公网安备 11010502036488号