题解 | SQL 入门 23 #统计每个学校各难度的用户平均刷题数#

统计每个学校各难度的用户平均刷题数

http://www.nowcoder.com/practice/5400df085a034f88b2e17941ab338ee8

解题

所需信息分布三表,因此需要三表连接
分组按照学校,难度依次即可
平均计算仍需考虑同设备不同次登录问题,需要DISTICT加以区分除数,而被除数无需DISTINCT加以区分

题解

题目:运营想要计算每个学校用户不同难度下的用户平均答题题目数情况,请你取出相应数据

SELECT university,difficult_level,COUNT(qpd.device_id) / COUNT(DISTINCT qpd.device_id)
AS avg_answer_cnt
FROM user_profile up 
JOIN question_practice_detail qpd ON up.device_id = qpd.device_id
JOIN question_detail qd ON qpd.question_id = qd.question_id
GROUP BY university,difficult_level

用户信息表:user_profile

题库练习明细表:question_practice_detail

表:question_detail

根据示例,你的查询应返回以下结果:

【题解】SQL 入门 文章被收录于专栏

SQL 入门 题解

全部评论

相关推荐

沉淀一会:1.同学你面试评价不错,概率很大,请耐心等待; 2.你的排名比较靠前,不要担心,耐心等待; 3.问题不大,正在审批,不要着急签其他公司,等等我们! 4.预计9月中下旬,安心过节; 5.下周会有结果,请耐心等待下; 6.可能国庆节前后,一有结果我马上通知你; 7.预计10月中旬,再坚持一下; 8.正在走流程,就这两天了; 9.同学,结果我也不知道,你如果查到了也告诉我一声; 10.同学你出线不明朗,建议签其他公司保底! 11.同学你找了哪些公司,我也在找工作。
点赞 评论 收藏
分享
像好涩一样好学:这公司我也拿过 基本明确周六加班 工资还凑活 另外下次镜头往上点儿
点赞 评论 收藏
分享
7 收藏 评论
分享
牛客网
牛客企业服务