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

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

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

由表tb_user_video_log里的数据可得只有旅游类视频的播放,2021年9月25到10月3日每天的点赞量和转发量如下:

alt

由上表利用窗口函数可以求出每类截至当天的喜欢数和最大数,要注意是前7天,那就是表示为需要窗口函数的前6条,表示为rows 6 preceding 可以得到:

alt

由于需要筛选出10-1到10-3的数据,所以嵌套一层加条件。注意窗口函数进行分组。

select * 
from (
    select 
        tag,
        dt,
        sum(like_cnt) over(partition by tag order by dt rows 6 preceding) as sum_like_cnt_7d,
        max(retweet_cnt) over(partition by tag order by dt rows 6 preceding) as retweet_cnt
    from (
        select 
            tvi.tag as tag,
            date_format(start_time,'%Y-%m-%d') as dt,
            sum(if_like) as like_cnt,
            sum(if_retweet) as retweet_cnt
        from tb_video_info tvi,tb_user_video_log tuvl
        where tvi.video_id=tuvl.video_id
            and start_time between date('2021-09-25') and date('2021-10-04')
        group by tag,dt
    )t
 )t1
where dt BETWEEN '2021-10-01' AND '2021-10-03'
ORDER BY tag DESC, dt

全部评论

相关推荐

ps:最寄的一集
投递拼多多等公司10个岗位 >
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务