对于本题我们不用在意数据表里除了device_id、question_id、和university的字段,其他的字段可以认为是干预我们视野的,我们首先需要做的就是连接查询,获取包含device_id、question_id、和university三个字段的新的表格信息: select up.device_id device_id,up.university university,qpd.question_id question_id from user_profile as up inner join question_practice_detail qpd on up.device_id = qpd.device_id 接下我们就是基于当前的这个表执行查询操作,首先按照university进行分组,然后count()统计每个学校答题总数,再去count(distinct(device_id))获取非重复各个学校的用户总数,最终的查询结果语句:* select aa.university,count(*)/count(distinct(device_id)) from (select up.device_id device_id,up.university university,qpd.question_id question_id from user_profile as up inner join question_practice_detail qpd on up.device_id = qpd.device_id) aa group by aa.university