select ui.uid, level, register_time, max(score) max_score
from user_info ui
left join exam_record er
on ui.uid = er.uid
where ui.uid in (
    select ui.uid
    from examination_info ei
    join exam_record er
    on ei.exam_id = er.exam_id
    right join user_info ui
    on ui.uid=er.uid 
    where ui.job = '算法' and tag = '算法'
    group by ui.uid, register_time
    having date(min(submit_time)) = date(register_time)     # 过滤保留注册当天就完成了算法类试卷的用户
) 
group by ui.uid
order by max_score desc
limit 6,3;