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

分组过滤练习题

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

1.首先用到的是 avg()求平均值
2.起一个别名
3.做判断
3.1用having 比较
3.2用子查询在用where
推荐使用2方式答题
答题方式1
select sp.university ,sp.avg_question,sp.avg_answer_cont
from
(select university,avg(question_cnt) as avg_question,
avg(answer_cnt) as avg_answer_cont
from user_profile
group by university ) sp
where sp.avg_question<5
or sp.avg_answer_cont<20
答题方式2
select university,avg(question_cnt) as avg_question,
avg(answer_cnt) as avg_answer_cont
from user_profile
group by university
having
avg_question<5
or
avg_answer_cont<20

全部评论
where语句里面不能直接用聚合函数
1 回复 分享
发布于 2023-05-26 14:49 河南
方式1有点看不懂
点赞 回复 分享
发布于 2022-02-23 20:11
为什么不能直接用where?
点赞 回复 分享
发布于 2023-05-26 14:45 河南
方法二运行错误
点赞 回复 分享
发布于 2023-12-28 11:56 安徽

相关推荐

评论
49
3
分享

创作者周榜

更多
牛客网
牛客企业服务