SQL23、统计每个学校各难度的用户平均刷题数
思路:使用表连接将有关联的表合并为大表。并用分组将重复的学校和难度数据合并。同时在计算平均答题数时用所有题目数除以用户数目
代码解释:对连接表进行分组并取出数据
SELECT
a.university,
c.difficult_level,
COUNT(b.question_id) / COUNT(DISTINCT b.device_id) AS avg_answer_cnt
FROM
(user_profile AS a
JOIN question_practice_detail AS b
ON a.device_id = b.device_id)
JOIN question_detail AS c
ON b.question_id = c.question_id
GROUP BY
a.university,c.difficult_level