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