题解 | #月均完成试卷数不小于3的用户爱作答的类别#

月均完成试卷数不小于3的用户爱作答的类别

https://www.nowcoder.com/practice/b1d13efcfa0c4ecea517afbdb9090845

做题建议:

体会1:牛客的题最好分析分析他的测试用例的,说实话他的描述真的不如leetcode清楚,很多有歧义的地方,前面我踩了很多坑就是因为有歧义造成对需求理解不到位。

体会2:拆步骤吧,虽然说个人一直觉得能一把梭就把代码写完确实很帅,但这样无形中就增加了对题的难度,其实自己有时候就喜欢这样,感觉很帅但是题会把你卡很久,不利于及时完成用户需求。

体会3:暂时还没有

#当月:submit_time最大的年月
#完成试卷数量:submit_time 不是空
#用户的
# 1002用户 (9003,1,算法,9月)(9002,1,C++,9),(9001,1,SQL,9)(9002,0,C++,7月)   三次完成 1次没完成
# 1005用户  (9001,1,SQL,9) (9002,1,c++,9) (9002,1,C++,9)   三次完成,0次不完成

#统计结果:C++  1次完成+1次不完成+1次完成+1次完成
#         SQL  1次完成+1次完成
#         算法  1次完成

#结论:条件1:筛选出  属于当前表的最大年月  且 完成试卷数量 >=3 的用户
#      在条件1的基础下,找到这些用户的所有答过的题,将他们按照tag进行分类,统计不同分类的数量,然后按照数量进行降序输出


select
d.tag,count(1) as tag_cnt
from 
exam_record c join examination_info d on c.exam_id = d.exam_id
where c.uid in(
select
a.uid
from exam_record a join (select max(submit_time) as maxData from exam_record ) b on date_format(a.submit_time,'%Y%m') = date_format(b.maxData,"%Y%m") and a.submit_time is not null

group by a.uid having count(1) >= 3
)

group by d.tag
order by tag_cnt desc

全部评论

相关推荐

尊嘟假嘟点击就送:加v细说,问题很大
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
10-12 10:48
已编辑
秋招之苟:邻居家老哥19届双2硕大厂开发offer拿遍了,前几天向他请教秋招,他给我看他当年的简历,0实习实验室项目技术栈跟开发基本不沾边😂,我跟他说这个放在现在中厂简历都过不了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
11-26 18:54
说等下个版本吧的发呆爱好者很贪睡:佬最后去了哪家呀
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务