题目内容
问题:计算2021年里有播放记录的每个视频的完播率(结果保留三位小数),并按完播率降序排序
注:视频完播率是指完成播放次数占总播放次数的比例。简单起见,结束观看时间与开始播放时间的差>=视频时长时,视为完成播放。
用户-视频互动表tb_user_video_log
短视频信息表tb_video_info
下面是我的代码,输出用例没问题,但是测试用例不通过,一直测试用例不通过
SELECT
video_id,
ROUND(COUNT(CASE
WHEN SECOND(TIMEDIFF(end_time, start_time)) >= duration THEN 1
ELSE NULL
END) / COUNT(start_time),
3) avg_comp_play_rate
FROM
tb_user_video_log
JOIN
tb_video_info USING (video_id)
WHERE
YEAR(start_time) = 2021
GROUP BY video_id
ORDER BY avg_comp_play_rate DESC;