题解 | #SQL157平均播放进度大于60%的视频类别#

平均播放进度大于60%的视频类别

https://www.nowcoder.com/practice/c60242566ad94bc29959de0cdc6d95ef

WITH t1 AS (
    SELECT tag,
           ROUND(AVG(IF(
                       TIMESTAMPDIFF(SECOND, start_time, end_time) / duration > 1,
                       100,
                       TIMESTAMPDIFF(SECOND, start_time, end_time) / duration * 100
                   )) OVER (PARTITION BY tag),2) AS avg_play_progress
    FROM tb_user_video_log tu
             LEFT JOIN tb_video_info tv
                       ON tu.video_id = tv.video_id
)
SELECT DISTINCT tag,
    CONCAT (avg_play_progress, '%') AS avg_play_progress
       FROM t1
WHERE avg_play_progress > 60
ORDER BY avg_play_progress DESC;

# 注意一点就是,秒数相减要采用 TIMESTAMPDIFF(单位,start,end)函数

全部评论

相关推荐

05-26 10:24
门头沟学院 Java
qq乃乃好喝到咩噗茶:其实是对的,线上面试容易被人当野怪刷了
找工作时遇到的神仙HR
点赞 评论 收藏
分享
06-23 11:28
门头沟学院 Java
牛客91966197...:也有可能是点拒绝的时候自动弹的话术
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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