题解 | #平均播放进度大于60%的视频类别#
平均播放进度大于60%的视频类别
https://www.nowcoder.com/practice/c60242566ad94bc29959de0cdc6d95ef
SELECT DISTINCT
tag,
CONCAT(ROUND(total/tag_video_num * 100, 2), '%') AS avg_play_progress
FROM(
SELECT
tag,
SUM(IF((TIME_TO_SEC(end_time) - TIME_TO_SEC(start_time))/duration > 1, 1, (TIME_TO_SEC(end_time) - TIME_TO_SEC(start_time))/duration))OVER(PARTITION BY tag) AS total,
COUNT(*) OVER(PARTITION BY tag) AS tag_video_num
FROM
tb_user_video_log AS u
INNER JOIN
tb_video_info AS v
USING(video_id)) AS a
WHERE total/tag_video_num * 100 > 60
ORDER BY avg_play_progress DESC
查看12道真题和解析