题解 | 统计每个用户的平均刷题数
统计每个用户的平均刷题数
https://www.nowcoder.com/practice/f4714f7529404679b7f8909c96299ac4
select university, difficult_level, count(q.question_id) / count(distinct (q.device_id)) avg_answer_cnt #from where写法 from user_profile u, question_practice_detail q, question_detail d where u.device_id = q.device_id and q.question_id = d.question_id #下方的inner join写法也对,注意inner可以省略,第一个inner join #可以换成left outer join,第二个inner join不能换,因为inner是取共同值,第二个表连接第三个表去共同值就会缺失,第一个表和第二个不管用哪一个都不会缺失 # from # user_profile u left outer join question_practice_detail q # on(u.device_id = q.device_id) inner join question_detail d # on (q.question_id = d.question_id) and university = "山东大学" group by difficult_level;