MakLok
MakLok
全部文章
分类
题解(17)
归档
标签
去牛客网
登录
/
注册
MakLok的博客
全部文章
(共28篇)
题解 | #2021年11月每天新用户的次日留存率#
题目需求:统计2021年11月每天新用户的次日留存率(保留2位小数) 条件: 1)只需要2021年11月的数据行; 2)次日留存率为【当天新增的用户数】中第二天又活跃了的用户数占比 —— 第一个坑点,只限于当天新增的用户,若用户在11-01、11-02、11-03、11-04都出现过,则只考虑11...
Mysql
2022-03-30
1
604
题解 | #国庆期间每类视频点赞量和转发量#
题目考核知识点:开窗函数中“移动平均”的变体用法(MAX、SUM) 解题思路: 第一步:先计算出每个类别,在每天的总点赞数、总转发数。这一步需要注意一点,video_id 2001和2002属于“旅游”类别,因此不要GROUP BY video_id,而是GROUP BY tag SELECT i...
Mysql
2022-03-28
5
450
题解 | #每个创作者每月的涨粉率及截止当前的总粉丝量#
题目:计算2021年里每个创作者每月的涨粉率及截止当月的总粉丝量 要求条件: 1)仅限2021年 2)结果按创作者ID、总粉丝量升序排序 指标: 1)涨粉率 = (加粉量 - 掉粉量) / 播放量 2)字段“if_follow” —— 1代表点击关注,0代表未点击关注,2为取消关注 解题思路 第一步...
Mysql
2022-03-25
5
963
题解 | #每类视频近一个月的转发量/率#
牛客部分题目的讲解确实有点晦涩难懂,参考了各位的代码和理解(TOP题解 @GAN就完事儿了 的回答已经很清楚了),题目的真实含义如下: 1.最近一个月的定义:距离有播放量的视频的最大日期(包含最大日期当天)不超过30天 —— 即,两个日期相减所得出的天数最大为29天 2.并且,不是求每类视频、各自的...
Mysql
2022-03-24
0
355
题解 | #每个题目和每份试卷被作答的人数和次数#
题意 统计出每个题目(question_id)和每份试卷(exam_id),被作答的人数(uv)和次数(pv) 分别按照“试卷”和“题目”的uv和pv降序 —— 根据示例答案可见,“试卷”的返还结果在上,随后再是“题目”的结果,并且,“试卷”和“题目”的排序是独立进行的,而非对最终结果一并排序 ...
Mysql
2022-03-22
7
625
题解 | #每份试卷每月作答数和截止当月的作答总数。#
题外笔记 在解题过程中也发现一个细节问题,不难,但是对我个人很有帮助,大家也可以在日后额外留意一下: 若在SELECT子句中为特定字段创建了别名(alias),同时还需要对该字段再SELECT并且进行操作,请不要在第二次(或任意一次)SELECT中使用该字段的别名——这么说很拗口晦涩,直接上示例: ...
Mysql
2022-03-21
3
457
题解 | #每类试卷得分前3名#
这道题最大的难点在于: 1)对 “如果两人最大分数相同,选择最小分数大者,如果还相同,选择uid大者” 这一条件的理解。 2)题目要求的结果,每一行的ranking是不可能重复的,所以ROW_NUMBER()相较于DENSE_RANK()肯定是更优的 第一次写的原代码如下,使用了两层子查询: SEL...
Mysql
2022-03-18
1
432
题解 | #有取消订单记录的司机平均评分#
发现大家多使用IFNULL函数或者Coalesce函数,在本道题目中虽然可行,但有一个潜在问题其实是会被忽略的(但该问题不会对本道题造成影响),即:当driver_id为NULL的时候,IFNULL、COALESCE则会将driver_id IS NULL的行也填充为“总计”(当然,ROLLUP出来...
Mysql
2022-03-18
13
535
首页
上一页
1
2
3
下一页
末页