Man.海坤
Man.海坤
全部文章
题解
归档
标签
去牛客网
登录
/
注册
Man.海坤的博客
全部文章
/ 题解
(共44篇)
题解 | #考试分数(四)#
题目: 请你写出一个sql语句查询在2025-10-15以后状态为购买成功的C++课程或者 Java课程或者Python的订单,并且按照order_info的id升序排序 思路: 1.单表查询;2.where条件语句;3.order by进行排序 select * from order_info a...
Mysql
2022-01-20
0
283
题解 | #考试分数(四)#
题目:请你写一个sql语句查询各个岗位分数升序排列之后的中位数位置的范围,并且按job升序排序, 思路: 函数:floor(),功能:向下取整数 得到为偶数时中间数开始的数(方法二) case when 1 then 2 else 3 end ,解释:当1时,就得到2,否则得到3(方法一) 答案: ...
Mysql
2021-12-15
0
313
题解 | #考试分数(三)#
题目:请你找出每个岗位分数排名前2名的用户,得到的结果先按照language的name升序排序, 再按照积分降序排序,最后按照grade的id升序排序。 思路:表1:每个部门的分数为第二名的用户,表2:整体的用户; 结果条件:表2所有的分数小于等于表1第二名分数的用户 SELECT g1.id, l...
Mysql
2021-12-01
0
369
题解 | #考试分数(二)#
题目:请你写一个sql语句查询用户分数大于其所在工作(job)分数的平均分的所有grade的属性, 并且以id的升序排序; 解析:创建两张表a和b,使用左连接两表,表a先按照job分组, 条件:表a每位用户的分数大于表b每个job的平均分数 select a.id, a.job, a.score f...
Mysql
2021-11-29
0
372
题解 | #考试分数(一)#
题目:写一个sql语句查询各个岗位分数的平均数,并且按照分数降序排序, 结果保留小数点后面3位(3位之后四舍五入); 思路:group by分组job,按照job进行分数score算平均avg select job, round(AVG(score), 3) as avg from grade gr...
Mysql
2021-11-23
0
327
题解 | #牛客每个人最近的登录日期(六)#
题目:请你写出一个sql语句查询刷题信息,包括: 用户的名字,以及截止到某天,累计总共通过了多少题, 并且查询结果先按照日期升序排序,再按照姓名升序排序; 思路:截止到某天累计通过的题数使用sum(number)over(partition by user_id order by date) 使用的...
Mysql
2021-11-19
0
437
题解 | #牛客每个人最近的登录日期(四)#
题目:请你写出一个sql语句查询每个日期登录新用户个数,并且查询结果按照日期升序排序; 缺陷思路:两张按date分过组的两张相同的表通过user_id作比较,表1不在表2中的user_id就是新用户, 最后算出总数; #错误写法:用user_id字段比较两张表,受局限性影响,不能将某日新用户为0的统...
Mysql
2021-11-11
0
487
题解 | #牛客每个人最近的登录日期(三)#
#题目: 请你写出一个sql语句查询新登录用户次日成功的留存率,即第1天登陆之后,第2天再次登陆的概率, 保存小数点后面3位(3位之后的四舍五入) 解析:本题运用了在查询的字段中插入子查询所提供的字段的values值,且使用round函数去精度值,distinct去重复值, 使得每一个唯一value...
Mysql
2021-11-08
0
408
题解 | #牛客每个人最近的登录日期(二)#
写出一个sql语句查询每个用户最近一天登录的日子,用户的名字,以及用户用的设备的名字, 并且查询结果按照user的name升序排序 解析:方法一错误点,先通过连接,再进行分组,造成了连接后的表字段排序混乱(GROUP BY分组后的聚合函数造成), 最终的设备名称就是不正确的,方法二,先进行分组,然后...
Mysql
2021-11-08
0
431
题解 | #异常的邮件概率#
错误写法如下,在最终查询的表里边又加入了(子查询后的分组表), 这样等同于在一个聚合函数的表进行筛选,所以就只有一条数据 SELECT r.date, r.type, count(type) AS d, round(sum(r.type = "no_completed") / count(type)...
Mysql
2021-11-05
0
314
首页
上一页
1
2
3
4
5
下一页
末页