select * from (
        select exam_id as tid,count(distinct uid) as uv,count(1) as pv
        from exam_record
        group by exam_id
        order by uv desc,pv desc
        ) t1
union all
select * from (
        select question_id as tid,count(distinct uid) as uv,count(1) as pv
        from practice_record 
        group by question_id
        order by uv desc,pv desc
        )t2