select tag,sum(if(if_retweet=1,1,0)) as retweet_cut, cast(sum(if(if_retweet=1,1,0))/count(*) as decimal(10,3)) as retweet_rate from tb_user_video_log tuvl left join tb_video_info tvi on tuvl.video_id = tvi.video_id where DATEDIFF(DATE((select max(end_time) from tb_user_video_log)),Date(tuvl.end_time)) <= 29 group by tag order by retweet_rate desc;
1.有交互的视频的最近一个月(就是有播放量的视频的最大日期 减去 30天)
2.每类视频在有用户互动的最近一个月(并不是对于各类视频计算最大值,而是整体的日期最大值)
难点:计算时间方面比较困难,这里使用datediff函数,然后将每个时间拿来进行对比。