[MySQL] group by 聚合函数的原理和聚合限制原因SELECT list is not in GROUP BY clause and contains nonaggregated column
2023-02-18 15:41:14 时间
group by 的原理是
先把数据根据分组字段 , 分好组 ,
然后再每个分组里面执行具体的聚合操作
ONLY_FULL_GROUP_BY模式的限制是:
SELECT list is not in GROUP BY clause and contains nonaggregated column
select查询的列里面 , 有不是group by子句中的字段 , 有不是聚合函数的字段
原因是:
group by后 , 所有的字段和属性 , 都是这个分组的属性了
一个小组的属性里 , 只有知道 最大 / 最小 / 平均 / 总数 , 这样的聚合属性才是有意义的
每个组员个体的属性是没有意义的
因此才会出现这个限制
相关文章
- Shell系列(37)- while和until循环
- Shell系列(36)- for循环语法二简介及批量添加删除用户
- Shell系列(35)- for循环语法一简介及批量解压缩脚本
- Shell系列(34) - 多分支case语句简介及实例
- Shell系列(32)- 双分支if语句判断Apache服务是否启动
- Shell系列(31)- 双分支if语句简介
- Shell系列(30)- 单分支if语句判断分区使用率
- Shell系列(29)- 单分支if语句格式
- Shell条件判断(6)- 多重条件判断
- Shell系列(28)- 条件判断之字符串判断
- Shell系列(27)- 条件判断之两个整数比较
- Shell系列(26)- 条件判断之两个文件比较
- Shell系列(25)- 条件判断之文件权限
- Shell系列(24)- 条件判断之文件类型
- Shell系列(23)- 字符截取命令sed
- Shell系列(22)- 字符截取命令awk
- Shell系列(21)- 字符截取命令printf
- Shell系列(20)- 字符截取命令cut
- Shell系列(19)- 正则表达式
- Shell系列(18)- 什么是正则表达式