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

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

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

写不出来,以后凡是思考超过5min的题,立刻看题解

参考第二高赞题解

SELECT
	u.university,
	qd.difficult_level,
	COUNT(q.quetion_id) / COUNT(DISTINCT(q.device_id)) AS avg_answer_cnt
FROM question_practice_detail AS q
LEFT JOIN user_profile AS u ON u.device_id=q.device_id
LEFT JOIN question_detail AS qd ON q.question_id=qd.question_id
GROUP BY u.university, qd.difficult_level

思考:为什么没写出来?

计算每个学校用户不同难度下的用户平均答题题目数 有点蒙,还是没有彻底理解联结的概念

  • 每个学校,不同难度:GROUP BY university, difficult_level
  • 平均答题数:所有答题数除以总人数`COUNT(question_cnt) / COUNT(DISTINCT device_id)
  • 联表:
    • user_profile(up)和question_practice_detail(q)用device_id联结
    • question_detail(qd)和question_practice_detail(q)联

到了中等难读以上的题,开始要求答题者更深地去理解字段的含义

#sql#
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务