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

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

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

select university,
round(count(question_id)/count(distinct(user_profile.device_id)),4) avg_answer_cnt
from user_profile inner join question_practice_detail
on user_profile.device_id=question_practice_detail.device_id
group by university
order by university

distinct和inner join都很关键

distinct去重,除去重复的device_id,否则平均答题数会显示为1

inner join 内连接只会连接两个表互相匹配上的行,对于表1中没答题的device_id,表2中是没有对应行的,所以内连接的时候就去掉了。同理,本题右连接也能对(因为本题表2数据都是有用需要的),如果改为左连接left join则会显示错误。

全部评论

相关推荐

用微笑面对困难:你出于礼貌叫了人一声大姐,大姐很欣慰,她真把你当老弟
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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