帝王血统的蚂蚱
帝王血统的蚂蚱
全部文章
题解
归档
标签
去牛客网
登录
/
注册
帝王血统的蚂蚱的博客
全部文章
/ 题解
(共93篇)
题解 | #对试卷得分做min-max归一化#
逻辑很简单,就是先用聚合加窗口函数算出归一值,然后再取平均值。 select uid, exam_id, cast(avg(standard) as unsigned) as avg_new_score from (select uid, exam_id, if(count(score) ove...
Mysql
2021-12-17
1
549
题解 | #试卷完成数同比2020年的增长率及排名变化#
运行时间超过96% 这道题逻辑很简单,分别用两个查询找出2021和2020的submit数量和排名,然后inner join起来就好了,再算一下growth_rate和delta_rank。 唯一要注意的就是算delta_rank的时候要把两个排名cast成unsigned格式。 with a a...
Mysql
2021-12-16
0
451
题解 | #未完成率较高的50%用户近三个月答卷情况#
首先找出未完成率前50%的人。 在子查询中算出未完成率:1-count(submit_time)/count(start_time),此处要将exam_record和examination_info两表连接来将tag限制为"SQL"。然后用percent_rank得到每个用户未完成率的百分位,将这一...
Mysql
2021-12-13
0
355
题解 | #近三个月未完成试卷数为0的用户完成情况#
用dense_rank根据年月来排名,这样在同一个月里的日期都可以有相同的名次 select temp.uid, count(temp.submit_time) as exam_complete_count from (select *, dense_rank() over (partiti...
Mysql
2021-12-13
0
342
题解 | #连续两次作答试卷的最大时间窗#
首先是建一个表存每个用户的最大时间窗。这里用到的方法是用窗口函数lead得到每个start_time下一个时间,然后用datediff得到两个时间的天数差,这里记得要给结果+1.然后用max得到最大时间窗。 with temp as (select dc.uid, max(dc.diff) as d...
Mysql
2021-12-13
5
518
题解 | #第二快/慢用时之差大于试卷时长一半的试卷#
学到了一个新聚合函数nth_value() with temp as (select exam_id, nth_value(timestampdiff(second, start_time, submit_time), 2) over(partition by exam_id or...
Mysql
2021-12-13
0
387
题解 | #每类试卷得分前3名#
嵌套了两次,首先根据tag和uid分组并找出每组最大值最小值,然后根据最大值最小值以及uid使用row_number赋予排序标签,最后限制前三名 select * from (select tag, uid, row_number() over (partition by tag order by ...
Mysql
2021-12-13
0
371
题解 | #每个6/7级用户活跃情况#
首先建一个新表temp合并exam_record和practice_record并加了一个label字段方便区分两个表。 with temp as (select uid, exam_id as try_id, start_time as try_time, "exam" as label fro...
Mysql
2021-12-13
0
436
题解 | #满足条件的用户的试卷完成数和题目练习数#
我无语了,他这计数标准根本没说清楚。但是对2021年这个条件的限制很值得思考,我没太整明白。。。 with temp as (select uid from exam_record inner join examination_info using(exam_id) inner join user...
Mysql
2021-12-12
0
410
题解 | #分别满足两个活动的人#
整体挺简单的,需要关注的是timestampdiff这个function,别的像是datediff和timediff都是第一个输入时间减去第二个输入时间,但是它是第二个输入时间减去第一个输入时间。 select distinct uid, "activity1" as act from exam_r...
Mysql
2021-12-12
3
406
首页
上一页
1
2
3
4
5
6
7
8
9
10
下一页
末页