select t.cid, max(t.cnt) as max_peak_uv from (select a.cid, sum(if(a.start_time between b.start_time and b.end_time,1,0)) as cnt from play_record_tb a join play_record_tb b on a.cid=b.cid group by a.id,a.cid,a.start_time ) t group by t.cid order by max_peak_uv desc limit 3