select
    exam_id,
    count(distinct uid) as uv,
    round(avg(score), 1) as avg_score
from
    examination_info a
    inner join exam_record b using(exam_id)
    inner join user_info c using(uid)
where
    a.tag = 'SQL'
    and c.level > 5
    and date(a.release_time) = date(b.start_time)
group by
    exam_id
order by
    uv desc,
    avg_score asc;