题解 | #统计每个学校的答过题的用户的平均答题数#
统计每个学校的答过题的用户的平均答题数
https://www.nowcoder.com/practice/88aa923a9a674253b861a8fa56bac8e5
SELECT u.university,SUM(e.ans_num)/COUNT(*) FROM user_profile u JOIN ( SELECT device_id,COUNT(*) AS ans_num FROM question_practice_detail GROUP BY device_id) e ON e.device_id= u.device_id GROUP BY university ORDER BY university ASC;
子查询加多表查询,子查询建立新表将device_id和该id下的答题数目作为新表的表头作为答题数目,将用户表与答题数目表连接,按照university分组,计算各组的答题数目/用户数目即为每个大学的平均答题数目,最后按照大学名称升序排列。