题解 | 各个视频的平均完播率

各个视频的平均完播率

https://www.nowcoder.com/practice/96263162f69a48df9d84a93c71045753

with a as(
    select
        l.video_id as video_id,
        timestampdiff(second,start_time,end_time) as watch_time,
        duration
    from tb_user_video_log l
        join tb_video_info i on l.video_id=i.video_id
    where year(start_time)=2021),
b as (
    select
        video_id,
        case
            when watch_time >= duration
            then 1
        else 0
        end watch_all
    from a
)
select
    video_id,
    round(sum(watch_all)/count(*),3) as avg_comp_play_rate
from b
group by video_id
order by avg_comp_play_rate desc
;

全部评论

相关推荐

12-24 20:49
武汉大学 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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