[MySQL] group by 聚合函数的原理和聚合限制原因SELECT list is not in GROUP BY clause and contains nonaggregated column

group by 的原理是 

先把数据根据分组字段 , 分好组 ,

然后再每个分组里面执行具体的聚合操作

 

ONLY_FULL_GROUP_BY模式的限制是:

SELECT list is not in GROUP BY clause and contains nonaggregated column

select查询的列里面 , 有不是group by子句中的字段 , 有不是聚合函数的字段

 

原因是:

group by后 , 所有的字段和属性 , 都是这个分组的属性了

一个小组的属性里 , 只有知道 最大 / 最小 / 平均 /  总数  , 这样的聚合属性才是有意义的

每个组员个体的属性是没有意义的 

因此才会出现这个限制

 

posted @   唯一客服系统开发笔记  阅读(570)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2019-04-26 [PHP]日志处理error_log()函数和配置使用
2019-04-26 [PHP] 使用反射实现的控制反转
2018-04-26 [日常] Go语言圣经--示例: 并发的Clock服务习题
2018-04-26 [日常] Go语言圣经--接口约定习题2
2016-04-26 [javascript] 看知乎学习js闭包
2016-04-26 [PHP] 看博客学习插入排序
2016-04-26 [android] ndk环境的搭建
点击右上角即可分享
微信分享提示
1
chat with us