题解 | #分组过滤练习题#

分组过滤练习题

http://www.nowcoder.com/practice/ddbcedcd9600403296038ee44a172f2d

1. 题目意思:

选取平均发贴数低于5的学校或平均回帖数小于20的学校

2. 思路拆解

  • 平均发贴数avg(question_cnt) 低于5的学校或平均回帖数avg(answer_cnt) 小于20的学校:avg(question_cnt) < 5 or avg(answer_cnt)<20
  • 题目要找的对象是学校,所以要用 group by university ,group by 还有去重的作用。

3.注意:

  • 这里的要用having,而不能用 where,因为select的字段当中有avg(question_cnt)和avg(answer_cnt) ,且having 后面需要接聚合函数。

4.答案输出:

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;
全部评论

相关推荐

06-26 15:33
青岛工学院 Java
积极的秋田犬要冲国企:他现在邀请我明天面试
点赞 评论 收藏
分享
Rena1ssanc...:对的,要是面评没太烂,勤更新简历等捞就行了,腾讯可以无限复活
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务