# 首先没看懂题目,看了下高赞回答的解释,非常感谢

# 查询有用户互动的最大日期
select date(start_time) max_day
from tb_user_video_log
order by start_time desc
limit 1

# 统计最大日期近一个月内每类视频的转发量和转发率,将datediff()用到连接条件中,实现筛选功能(只留下近一个月内的记录)
select tag, sum(if_retweet) retweet_cnt,round(avg(if_retweet=1),3) retweet_rate
from tb_user_video_log tv
join tb_video_info ti
on tv.video_id=ti.video_id
join (
    select date(start_time) max_day
    from tb_user_video_log
    order by start_time desc
    limit 1
) k1
on datediff(k1.max_day, date(start_time))<30
group by tag
order by retweet_rate desc;