select uid,
count(*)-count(submit_time) as incomplete_cnt,
count(submit_time) as complete_cnt,
group_concat(distinct concat_ws(':',date(start_time),tag) order by start_time separator ';') as detail

from exam_record er
join examination_info e
on er.exam_id = e.exam_id

where year(start_time)=2021
group by uid
having incomplete_cnt >1 and incomplete_cnt<5
and complete_cnt>=1

order by incomplete_cnt desc

group_concat(distinct concat_ws(':',date(start_time),tag) order by start_time separator ';')重点