great、DY
great、DY
全部文章
分类
题解(13)
归档
标签
去牛客网
登录
/
注册
great、DY的博客
全部文章
(共13篇)
题解 | #最差是第几名(二)#
select grade from( select grade, #本等级第一名排名=上一等级最后一名排名+1,A等级为1 if(t_rank_last is null,1,t_rank_last+1) t_rank_min, t_rank_max, #中位数...
Mysql
2022-03-20
0
279
题解 | #网易云音乐推荐(网易校招笔试真题)#
select round(count(t2.user_id)/count(t1.user_id),3) from (select user_id,min(date) first_date from login group by user_id) t1 left join login ...
Mysql
2022-03-12
0
257
题解 | #牛客每个人最近的登录日期(六)#
一看到组内累计求和就考虑用开窗函数 select u.name u_n,date,sum(number) over(partition by user_id order by date) ps_num from passing_number p left join user u on p.user_...
Mysql
2021-10-14
1
378
题解 | #牛客每个人最近的登录日期(四)#
对用户开窗函数,组内对date排序,date_rank=1的为当日新用户 再对date分组,聚合函数求和,date_rank=1的计为1,其它计为0 select t.date,sum(if(t.date_rank=1,1,0)) new from ( select user_id,date,ra...
Mysql
2021-10-14
2
366
题解 | #牛客每个人最近的登录日期(三)#
思路:想知道第一次登陆后,第二天登陆和没登陆的客户数。 1,以用户ID分组,聚合函数出每个用户第一次登陆的日期,用并dateadd函数求出第二天的日期,此表为t1 2,t1表与原表(t2)连接,只连接登陆日期为第二天的 3,第二天登陆的有连接上t2.userid和date,第二天没有登陆的id和d...
Mysql
2021-10-14
1
420
题解 | #牛客每个人最近的登录日期(二)#
1 用开窗函数在各分组内以日期降序排名, 2 连接用户表和设备表, 3 where筛选第1步中排名为1的行,就是各分组中日期最晚的行数据 select user.name u_n,client.name c_n,t.date from (select user_id,client_id,date,...
Mysql
2021-10-14
7
436
题解 | #获得积分最多的人(二)#
select t.id,t.name,t.grade_sum from ( select id,name,sum(grade_num) as grade_sum,rank() over (order by sum(grade_num) desc) as rank_sum from grade_inf...
Mysql
2021-10-13
0
358
题解 | #牛客的课程订单分析(七)#
'3,以来源分组,聚合函数count求订单数cnt select t2.source,count(source) cnt from( '2,筛选出购买2单及以上的用户的数据行,再加来源列,将拼单行设为GroupBuy select t1.*,if(t1.is_group_buy='...
Mysql
2021-10-11
1
436
题解 | #牛客的课程订单分析(四)#
1 先筛选出符合时间、购买成功、课程要求的行, 2 对user_id分组,聚合函数统计各id的最小时间和购买次数, 3 having筛选出购买2次及以上的id select user_id,min(date) first_buy_date,count(id) cnt from order_info...
Mysql
2021-10-11
0
289
题解 | #考试分数(四)#
先分组聚合函数求出各job的分数个数num, 再逻辑函数判断出num为奇或为偶,连接各自计算公式 select job, case when mod(num,2)=1 then round((num+1)/2) else round(num/2) end as start, case when mo...
Mysql
2021-10-11
8
467
首页
上一页
1
2
下一页
末页