题解 | #国庆期间每类视频点赞量和转发量#
国庆期间每类视频点赞量和转发量
http://www.nowcoder.com/practice/f90ce4ee521f400db741486209914a11
#滑动窗口函数:window w(简称) as(partition by 1 order by 2 rows between a and b)可以完成对a到b范围行数的的内容开窗,在本题中可以获取近七天的数据内容
- select*from
- (select
- tag,
- dt,
- sum(like_cnt) over w sum_like_snt_7d, # over w(窗口函数的简称)即可使用窗口函数
- max(retweet_cnt) over w sum_retweet_7d
- from
- (select
- tag,
- date(start_time) dt,
- sum(if_like) like_cnt,
- sum(if_retweet) retweet_cnt
- from tb_video_info
- left join tb_user_video_log using (video_id)
- where date(start_time) between '2021-09-25' and '2021-10-03'
- group by tag, dt) t1
- window w as(partition by tag order by dt desc rows between current row and 6 following) #滑动窗口函数放在表格t的后面
- )t2
- group by tag, dt
- having dt between '2021-10-01' and '2021-10-03'
- order by tag desc, dt