题解

  1. 此题是要求统计每一个学校,因此要针对学校做一个分组。我们就需要考虑使用group进行分组。

  2. 要求计算问题和回复的平均数,可以使用avg函数统计。

  3. 由于要过滤问题平均数量小于5,或者回复数量小于20。这要针对2中统计的数据再次做过滤。在group中,做过滤可以直接使用having,而不是使用where过滤。这里使用where也是不能运行的。

答案

SELECT 
university, 
AVG(question_cnt) as avg_question_cnt, 
AVG(answer_cnt) as avg_answer_cnt 
FROM user_profile 
GROUP BY university
HAVING avg_question_cnt < 5 OR avg_answer_cnt < 20;