当前位置: 首页 > article >正文

牛客sql题目总结(1)

1.第N高的薪水

AC:

create function getnthhighestsalary(n int) returns int
begin
    declare m int; 
    set m = n - 1; 
    return (
        select distinct salary
        from employee
        order by salary desc
        limit m, 1
    );
end

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

AC:

select 
    tb_video_info.tag,
    concat(round(avg(
        if(timestampdiff(second, start_time, end_time) >= tb_video_info.duration, 
           1, 
           timestampdiff(second, start_time, end_time) / tb_video_info.duration
        ) * 100, 2), '%') as avg_play_progress
from 
    tb_user_video_log
join 
    tb_video_info on tb_video_info.video_id = tb_user_video_log.video_id
group by 
    tb_video_info.tag
having 
    avg(
        if(timestampdiff(second, start_time, end_time) >= tb_video_info.duration, 
           1, 
           timestampdiff(second, start_time, end_time) / tb_video_info.duration
        ) * 100
    ) > 60
order by 
    avg_play_progress desc;

解释:

  • TIMESTAMPDIFF(SECOND, start_time, end_time):计算 start_time 和 end_time 之间的秒数差异,作为播放时长。
  • 通过该差异,你可以比较每个用户的观看时长与视频时长,进而计算播放进度。

这样可以确保你正确处理了时间差,并按照实际播放时长来计算进度。

3.每类视频近一个月的转发量/率

AC:

SELECT b.tag, SUM(if_retweet) retweet_cnt, ROUND(SUM(if_retweet)/COUNT(*), 3) retweet_rate
FROM tb_user_video_log a
LEFT JOIN tb_video_info b
ON a.video_id = b.video_id
WHERE DATEDIFF(DATE((select max(start_time) FROM tb_user_video_log)), DATE(a.start_time)) <= 29
GROUP BY b.tag
ORDER BY retweet_rate desc

4.

5.

6.


http://www.kler.cn/a/384645.html

相关文章:

  • 数据结构:七种排序及总结
  • C#-拓展方法
  • Docker lmdeploy 快速部署Qwen2.5模型openai接口
  • 论 ONLYOFFICE:开源办公套件的深度探索
  • 【d63】【Java】【力扣】141.训练计划III
  • 前端使用Luckysheet把返回的base64或二进制文件流格式,实现xlsx文件预览
  • RK3568平台(基础篇)selinux内核安全
  • JVM基本结构
  • 工业相机常用功能之白平衡及C++代码分享
  • 天锐绿盾加密软件与Ping32全面对比:为您的数据保驾护航,哪款加密工具更适合您?
  • 解析Go切片:为何按值传递时会发生改变?|得物技术
  • Python OpenCV 傅里叶变换
  • 纯血鸿蒙系统 HarmonyOS NEXT自动化测试实践
  • leetcode 3254 长度为 K 的子数组的能量值 I 中等
  • redhat5与ubuntu上Makefile语法区别
  • DevOps业务价值流:架构设计最佳实践
  • 【K8S问题系列】Kubernetes Pod节点CrashLoopBackOff 状态【已解决】
  • 技术干货丨Inspire Cast 如何避免自动网格划分失败?
  • 汽车免拆诊断案例 | 2017款凯迪拉克XT5车组合仪表上的指针均失灵
  • Git+Jenkins基本使用
  • 环保在线监测平台:环境健康云监测,大数据助力生态文明建设
  • 【前端基础】CSS进阶
  • 泷羽sec学习打卡-shodan扫描5
  • SpringBoot监控
  • vue3 pdf base64转成文件流打开
  • 阿里云函数计算GBK编码