select tag,
concat(round(avg(if(TIMESTAMPDIFF(second,start_time,end_time)>=duration,1,TIMESTAMPDIFF(second,start_time,end_time)/duration))*100,2)
,'%') as avg_play_progress
from tb_user_video_log join tb_video_info t1 using(video_id)
group by tag
having avg(if(TIMESTAMPDIFF(second,start_time,end_time)>=duration,1,TIMESTAMPDIFF(second,start_time,end_time)/duration))>0.6
order by avg_play_progress desc