栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【关于mysql5.7及以上版本的group by 查询问题的解决方案】

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【关于mysql5.7及以上版本的group by 查询问题的解决方案】

关于mysql5.7及以上版本的group by 查询问题的解决方案
报错内容如下:
expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘表名.字段名’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

原因:从5.7版本及以后的版本,默认设置了严格模式,你只能查询你执行分组字段的字段名!!!

这样操作就不会报错,如果你想解决这个问题,就按照下面的方法执行即可!!!

解决方法如下: 1.找到mysql安装根目录下的my.ini配置文件 2.根据你的mysql版本在该配置文件的mysqld配置下加入下面一条配置,如下图(我的版本是8.0,所以我以此为例):
下面要区分mysql版本:
5.7及更新的版本(8版本除外):

sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

mysql8:
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

3.去重启mysql服务即可
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/735745.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号