Nicole2333

导航

mysql-20211116

题目:运营想要了解每个学校答过题的用户平均答题数量情况,请你取出数据。

示例:用户信息表 user_profile,其中device_id指终端编号(认为每个用户有唯一的一个终端),gender指性别,age指年龄,university指用户所在的学校,gpa是该用户平均学分绩点,active_days_within_30是30天内的活跃天数。

 

示例:答题情况明细表 question_practice_detail,其中question_id是题目编号,result是答题结果。

说明:某学校用户平均答题数量计算方式为该学校用户答题总次数除以不同用户的个数,根据示例,你的查询应返回以下结果(结果保留4位小数):

select university,count(question_id) / count(distinct a.device_id) as avg_answer_cnt

from question_practice_detail as a

left join user_profile  b

on a.device_id = b.device_id

group by university

------------------------------------------------------------------------------------------------------------------------------------------

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

用户信息表:user_profile

 

题库练习明细表:question_practice_detail

 

表:question_detail

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

/*select university,difficult_level, count(b.question_id) / count(distinct b.device_id) as avg_question_id

from user_profile a,question_practice_detail b,question_detail c

where  a.device_id = b.device_id and b.question_id = c.question_id

group by university,difficult_level

*/

或者

SELECT u.university,

       q2.difficult_level,

       COUNT(q.question_id)/count(DISTINCT q.device_id) AS avg_answer_cnt

FROM user_profile as u JOIN question_practice_detail as q ON u.device_id=q.device_id

                       JOIN question_detail as q2 ON q.question_id=q2.question_id

GROUP BY u.university,q2.difficult_level;

 

posted on 2021-11-16 09:42  Nicole2333  阅读(39)  评论(0编辑  收藏  举报