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

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

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

#方法1 cross join where
# select university,round(count(qpd.device_id)/count(distinct(qpd.device_id)),4) as avg_answer_cnt
# from user_profile as up
# cross join question_practice_detail as qpd
# where up.device_id=qpd.device_id
# group by up.university
# order by up.university asc

#方法2 inner join on
# select up.university,round(count(qpd.device_id)/count(distinct(qpd.device_id)),4) as avg_answer_cnt
# from user_profile as up
# inner join question_practice_detail as qpd
# on up.device_id=qpd.device_id
# group by up.university
# order by up.university asc

#方法3 right join,因为up表中可能有没有答题的,所以left join会有up表中多余id的空值,qpd表中肯定是答过题的,因此以qpd表为主用right join
select up.university,round(count(qpd.device_id)/count(distinct(qpd.device_id)),4) as avg_answer_cnt
from  user_profile as up
right join  question_practice_detail as qpd
on up.device_id=qpd.device_id
group by up.university
order by up.university asc

全部评论

相关推荐

牛牛不会牛泪:脉脉太多这种了,纯水军
点赞 评论 收藏
分享
08-15 01:16
Python
Java小萌新新萌小...:照片不用整这么大的 而且你的照片截歪了 你想找专业对口的 那普通话证写在这里其实没有什么必要 就是看着内容多点 而且里面字体大小也不一样 修改一下排版 有很多空间可以再利用一下 字大一点 不然现在这样观感不太好 再就是项目好好优化一下 加油
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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