with zb as (select exam_id,date_format(start_time,'%Y%m') start_month,count(uid) month_cnt from exam_record e1 group by exam_id,date_format(start_time,'%Y%m')) select *,sum(month_cnt) over(partition by exam_id order by start_month) cum_exam_cnt from zb