欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 培训 > 17.group by分组统计

17.group by分组统计

2025/12/14 9:55:58 来源:https://blog.csdn.net/weixin_65866298/article/details/148749627  浏览:    关键词:17.group by分组统计

1.基本使用

SELECT column1,column2,column3...... FROM table_namegroup by column

示例

统计学生的总成绩平均分,按班级分组:

SELECT avg(chinese + math + english) FROM students group by class

结果:

可以看到四个班级的总成绩平均分已经出来了。

2.having过滤

SELECT column1,column2,column3...... FROM table_namegroup by column having......

示例

统计学生的总成绩平均分,按班级分组,且过滤掉总成绩平均分不够240的班级:

SELECT avg(chinese + math + english) FROM students group by class having avg(chinese + math + english) >= 240

结果:

可以看到240分以下的班级已经被过滤掉了。

但是这里还是有一点不足:我们在过滤时又进行了一次平均分的计算,所以这里我们用别名来优化一下sql的效率。

SELECT avg(chinese + math + english) as avg_score FROM students group by class having avg_score >= 240

结果:

这样在面对数据量巨大时有助于提升sql语句的执行效率。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com