sql 练习1:各个视频的平均完播率

该SQL练习旨在计算各类视频的平均播放进度,条件是播放进度需大于60%。根据用户观看记录,计算播放时长与视频时长的比例并保留两位小数。结果按播放进度从高到低排序,示例中影视类视频平均完播率为90.00%,美食类为75.00%。
摘要由CSDN通过智能技术生成

select c.video_id,
 round(count(case when c.end_time >=c.duration then end_time else null end)/count(end_time),3) as avg_comp_play_rate
from (
   select a.video_id as video_id ,(a.end_time-a.start_time) end_time,
          b.duration duration,b.release_time release_time
   from tb_user_video_log a
   left join tb_video_info b
   on a.video_id=b.video_id 
   where  year(start_time)=2021
) c
   group by c.video_id
   order by avg_comp_play_rate desc

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

问题:计算各类视频的平均播放进度,将进度大于60%的类别输出。

  • 播放进度=播放时长÷视频时长*100%,当播放时长大于视频时长时,播放进度均记为100%。
  • 结果保留两位小数,并按播放进度倒序排序。

输出示例

示例数据的输出结果如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值