题解 | 国庆期间每类视频点赞量和转发量

国庆期间每类视频点赞量和转发量

https://www.nowcoder.com/practice/f90ce4ee521f400db741486209914a11

-- 需求:统计2021年国庆头3天每类视频每天的近一周总点赞量和一周内最大单天转发量,结果按视频类别降序、日期升序排序。假设数据库中数据足够多,至少每个类别下国庆头3天及之前一周的每天都有播放记录。
-- 拆解思路如下:
-- 1、使用left join语句将互动表与信息表中所需要的内容进行连接
-- 2、国庆前3天每天对应的近一周日期应该是  最早日期是9月24日,与10月3日之间相差9天。每个日期对应的近一周数据,可以使用窗口排序函数以及 rows n precedinng来进行计算 
select * 
from (
select 
tag 
,date(start_time) as dt 
,sum(sum(if_like)) over (partition by tag order by date(start_time) rows 6 preceding) as sum_like_cnt_7d 
,max(sum(if_retweet)) over (partition by tag order by date(start_time) rows 6 preceding) as max_retweet_cnt 
from tb_user_video_log t1 
left join tb_video_info t2 
on t1.video_id = t2.video_id 
where year(start_time) = 2021 
and datediff('2021-10-03',date(start_time)) <= 9 
group by tag ,dt 
order by tag desc ,dt ) t 
where dt between '2021-10-01' and '2021-10-03'

全部评论

相关推荐

求面试求offer啊啊啊啊:这个在牛客不是老熟人了吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务