题解 | #统计每个学校各难度的用户平均刷题数#

统计每个学校各难度的用户平均刷题数

https://www.nowcoder.com/practice/5400df085a034f88b2e17941ab338ee8

select university,difficult_level,count(question.question_id) / count(distinct question.device_id) avg_answer_cnt from user_profile user  join question_practice_detail  question on user.device_id = question.device_id  join question_detail detail on question.question_id =  detail.question_id group by university,difficult_level
  1. 不同学校、不同难度,即需要使用group by进行分组
  2. 用户平均答题数量,需要考虑一个用户可以重复答题,因此使用 题目总数/去重后的用户设备总数
  3. 注意使用inner join而不是left join,原因是题目中要求参加了答题的用户,即有些用户可能没有答题,因此使用inner
全部评论
本题可以使用left join,但需要注意以哪张表作为基表使用
点赞 回复 分享
发布于 2023-01-30 22:56 陕西

相关推荐

StephenZ_:我9月份找的第一段实习也是遇到这种骗子公司了,问他后端有多少人和我说7个正职,进去一看只有一个后端剩下的都是产品前端算法(没错甚至还有算法)。还是某制造业中大厂,我离职的时候还阴阳怪气我
点赞 评论 收藏
分享
2025-11-07 16:07
复旦大学 运营
前端飞升:学长,阿里不是卡双非吗,我深也能去吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务