with tiaojian as (
select 
uid
from exam_record
group by uid
having count(submit_time)/count(distinct month(submit_time))>=3
)

select 
tag,
count(tag) as tag_cnt
from tiaojian t inner join exam_record ed on t.uid=ed.uid 
inner join examination_info ef on ef.exam_id=ed.exam_id
group by tag
order by tag_cnt desc