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

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

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

#解题思路:因为要找国庆头三天的近一周的相关数据,我想先将表中每一天的近一周的点赞量和最大转发量求出再缩小范围
所以我决定采用表的自连接的方法,可以将每一天所对应的近一周的日期对应的数据查找出来。
(做完发现评论区中有很多是采用窗口函数的,这也是一种很好的方法,但是如果题目提供的数据日期不是连续的,就会导致问题的出现,而我这样做就可以避免,如果有问题,请指出,谢谢)

# t表是聚合后每类视频的每一天的点赞量和转发量
with t as(select v.tag,date(u.start_time) date,sum(u.if_like) su_like,sum(u.if_retweet) su_re
from tb_user_video_log u join tb_video_info v using (video_id)
group by v.tag,date
)
#提供t表的自连接,找到每个日期的近一周的数据然后计算点赞量和最大转发量,这里需要注意连接条件
select t1.tag,t1.date,sum(t2.su_like),max(t2.su_re)
from t t1 left join t t2 on t1.date>=t2.date and datediff(t1.date,t2.date)<=6 and t1.tag=t2.tag
where t1.date between '2021-10-01' and '2021-10-03'
group by t1.tag,t1.date
order by t1.tag desc,t1.date



全部评论

相关推荐

皮格吉:不,有的厂子面试无手撕,可以试试。都是一边学一边面。哪有真正准备好的时候,别放弃
无实习如何秋招上岸
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务