题解 | #统计每个学校的答过题的用户的平均答题数#

统计每个学校的答过题的用户的平均答题数

https://www.nowcoder.com/practice/88aa923a9a674253b861a8fa56bac8e5

1. 明确从两张表的内连接中取数
2. 思考如何计算平均答题数:
  • 相关数据:university, device_id, question_id
  • 想一下连接后生成的表的形式:university重复最多,其次是device_id,再次是没有重复的question_id
  • 以university分组,每个university的question_id的总数量除以其device_id的不重复数量就是最终的平均答题数
3. 最后需要注意以university为基准进行升序排列

SELECT university, 
    COUNT(qpd.question_id) / COUNT(DISTINCT qpd.device_id)
        AS avg_answer_cnt
FROM question_practice_detail AS qpd
    INNER JOIN user_profile AS up
        ON qpd.device_id = up.device_id
GROUP BY university
ORDER BY university ASC


#sql#
全部评论

相关推荐

04-22 15:13
已编辑
Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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