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

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

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

SELECT
	video_id,
	ROUND((100 * SUM(IF(play_tm >= duration, 1, 0)) / COUNT(video_id) + 3 * COUNT(comment_id) + 5 * SUM(if_like) + 2 * SUM(if_retweet)) /(MIN(play_diff) + 1), 0) hot_index
FROM
	(
		SELECT
			a.*,
			b.duration,
			b.release_time,
			timestampdiff(second, start_time, end_time) play_tm,
			MAX(SUBSTR(end_time, 1, 10)) over() last_time,
			DATEDIFF(MAX(SUBSTR(end_time, 1, 10)) over(), SUBSTR(end_time, 1, 10)) play_diff
		FROM
			tb_user_video_log a
		LEFT JOIN tb_video_info b
		ON
			a.video_id = b.video_id
	)
	t1
WHERE
	play_diff <= 29
	AND datediff(last_time, substr(release_time,1,10)) <=29
GROUP BY
	video_id
ORDER BY
	hot_index DESC
limit 3

全部评论

相关推荐

SaviorSu:直接说下学期可以请假,一般情况学校允许我26届,大三就直接去实习了
点赞 评论 收藏
分享
淬月星辉:专利是什么?至少描述一下吧,然后把什么计算机二级、普通话这种拉低格调的证书删掉,不然hr以为你没东西写
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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