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

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

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

不应该是LEFT JOIN 是JOIN

计算完播次数时是>=duration

WITH t AS (SELECT
b.video_id,
COUNT(IF(TIMESTAMPDIFF(SECOND,b.start_time,b.end_time) >= a.duration ,1,NULL))/COUNT(*) AS finish_rate,
SUM(if_like) AS likes,
COUNT(comment_id) AS comments,
SUM(if_retweet) AS retweet,
1/(DATEDIFF((SELECT MAX(DATE(end_time)) FROM tb_user_video_log),MAX(end_time))+1) AS fresh
FROM tb_video_info a
JOIN tb_user_video_log b USING(video_id)
WHERE DATE(release_time) BETWEEN DATE_SUB((SELECT MAX(DATE(end_time)) FROM tb_user_video_log),INTERVAL 29 DAY) AND (SELECT MAX(DATE(end_time)) FROM tb_user_video_log)
GROUP BY b.video_id)

SELECT
video_id,
ROUND((100*finish_rate+5*likes+3*comments+2*retweet)*fresh) AS hot_index
FROM t
ORDER BY hot_index DESC
LIMIT 3;

全部评论

相关推荐

07-30 13:50
门头沟学院 Java
点赞 评论 收藏
分享
07-20 12:08
已编辑
江南大学 图像识别
机械牛马勇闯秋招:把校园经历里面做过的项目,大作业,课设,毕设啥的,扩写,写成具体的项目经历,自我评价缩写别占篇幅,不然这简历真没东西,初筛都过不了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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