题解 | #统计每个学校各难度的用户平均刷题数#
统计每个学校各难度的用户平均刷题数
http://www.nowcoder.com/practice/5400df085a034f88b2e17941ab338ee8
题意解读
题目:运营想要计算一些参加了答题的不同学校、不同难度的用户平均答题量
- 不同学校:根据学校分组,
group by university
- 不同难度:根据难度分组,
group by difficult_level
细节问题
平均刷题数 = 当前学校,当前难度下答题总数量 除以 当前难度下答题的人数
即: 答题总数量 ➗ 答题总人数
完整SQL
SELECT
u.university,
qd.difficult_level,
count(qpd.question_id) / count(distinct(u.device_id)) AS avg_answer_cnt
FROM
user_profile u
JOIN question_practice_detail qpd
JOIN question_detail qd ON u.device_id = qpd.device_id
AND qpd.question_id = qd.question_id
GROUP BY
u.university,
qd.difficult_level