题解 | #近一个月发布的视频中热度最高的top3视频#

近一个月发布的视频中热度最高的top3视频

https://www.nowcoder.com/practice/0226c7b2541c41e59c3b8aec588b09ff

select
video_id
,round(((100*视频完播率+5*点赞数+3*评论数+2*转发数)*新鲜度),0) as hot_index
from(
    select
    a.video_id
    ,avg(if(timestampdiff(second,start_time,end_time)>=duration,1,0)) as 视频完播率
    ,sum(if_like) as 点赞数
    ,sum(if_retweet) as 转发数
    ,count(comment_id) as 评论数
    ,1/(datediff((select date(max(end_time)) from tb_user_video_log),date(max(end_time)))+1) as 新鲜度
    from tb_user_video_log a
        join
    tb_video_info b
    on a.video_id=b.video_id
    where datediff((select date(max(end_time)) from tb_user_video_log),date(release_time))<=29
    group by 1) c
order by hot_index desc
limit 3;

#视频完播率
avg(if(timestampdiff(second,start_time,end_time)>=duration,1,0))
#点赞数
sum(if_like)
#评论数
count(comment_id)
#转发数
sum(if_retweet)
#时间区间
datediff((select date(max(end_time)) from tb_user_video_log),date(release_time))<=29
#新鲜度
1/(datediff((select date(max(end_time)) from tb_user_video_log)
,date(max(end_time)))+1)
#所有视频中最长的结束时间-当前视频的最大结束时间=未播放天数
#热度
round(((100*视频完播率+5*点赞数+3*评论数+2*转发数)*新鲜度),0)



全部评论

相关推荐

05-12 17:00
门头沟学院 Java
king122:你的项目描述至少要分点呀,要实习的话,你的描述可以使用什么技术,实现了什么难点,达成了哪些数字指标,这个数字指标尽量是真实的,这样面试应该会多很多,就这样自己包装一下,包装不好可以找我,我有几个大厂最近做过的实习项目也可以包装一下
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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