SQL刷题记录三

题目6:SQL1 各个视频的平均完播率

链接:各个视频的平均完播率_牛客题霸_牛客网 (nowcoder.com)

题目解析:

  1. 先理解题目意思:有播放记录的视频的id号和其完播率。条件是:2021年和根据其完播率降序排序。
  2. 拆解复杂指标:这里需要拆解的是完播率这个指标 

select u.video_id,
        round(sum(if(end_time-start_time>=duration,1,0)) / count(start_time),3) as avg_comp_play_rate
from tb_user_video_log as u 
left join tb_video_info as v
on u.video_id = v.video_id
where year(start_time) = 2021
group by u.video_id
order by avg_comp_play_rate desc;

 

题目7:SQL30 统计每种性别的人数

链接:统计每种性别的人数_牛客题霸_牛客网 (nowcoder.com)

题目解析:使用substring_index(str,delim,count)

select substring_index(profile,',',-1) as gender,
        count(*) as number
from user_submit
group by gender;

题目8:SQL32 截取出年龄

链接:截取出年龄_牛客题霸_牛客网 (nowcoder.com)

题目解析:先用substring_index(profile, ',', -2)取出27,male,

                再用substring_index(profile, ',', 1)取出27

select
    substring_index(substring_index(profile, ',', -2),',',1) as age,
    count(device_id) as number
from user_submit
group by age

当然,我可以为您介绍一下 SQL Server 刷题的相关内容。SQL Server 是一种关系型数据库管理系统,用于存储和管理大量结构化数据。在刷题过程中,您可以通过解决一系列与 SQL Server 相关的问题来提高对其的理解和应用能力。 以下是一些常见的 SQL Server 刷题方向和相关问题: 1. SQL 基础知识: - 什么是 SQL Server?它有哪些特点和优势? - SQL Server 中的数据类型有哪些?它们分别用于存储什么类型的数据? - 如何创建数据库和表格? - 如何插入、更新和删除数据? - 如何使用 SELECT 语句查询数据? 2. 数据查询与筛 - 如何使用 WHERE 子句进行条件选? - 如何使用 ORDER BY 子句对查询结果进行排序? - 如何使用 GROUP BY 子句进行分组聚合操作? - 如何使用 HAVING 子句进行条件筛选(针对分组后的结果)? . 数据操作与修改: - 如何使用 UPDATE 语句修改表格中的数据? - 如何使用 DELETE 语句删除表格中的数据? - 如何使用 INSERT INTO 语句插入新的数据? 4. 数据连接与联结: - 如何使用 JOIN 连接多个表格? - 什么是内连接、外连接和交叉连接? - 如何使用子查询进行复杂的数据查询? 5. 数据聚合与统计: - 如何使用聚合函数(如 SUM、AVG、COUNT、MAX、MIN)进行数据统计? - 如何使用 GROUP BY 子句进行分组统计? - 如何使用 HAVING 子句进行条件筛选(针对分组后的统计结果)? 这些问题只是 SQL Server 刷题中的一部分,您可以根据自己的需求和水平选择适合的题目进行练习。同时,还可以参考 SQL Server 官方文档、教程和在线资源来深入学习和提高技能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值