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