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

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

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

select u.university,count(q.question_id)/count(distinct q.device_id) as avg_answer_cnt
from user_profile u
join question_practice_detail q
on u.device_id=q.device_id
group by u.university 
order by u.university asc

知识点:

1.多表联查

2.group by 语句和order by语句的使用

注意事项:count(q.question_id)和group by u.university就是按照学校来统计答题的总数,后面的count(distinct q.device_id)这一句,为什么要从question_practice_detail中去去重取呢?而不是从user_profile中直接取device_id?因为后者可能存在没有答题的device_id,所以必须从已经答题的表中去取

全部评论

相关推荐

点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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