this is incompatible with sql_mode=only_full_group_by

报错信息:

Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'xxxx' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

原因:

这是因为mysql5.7及以上版本的mysql中,对于 group by 的这种聚合操作,如果在select 中的列,

没有在group by 中出现,那么这个SQL是不合法的,因为列不在group by的从句中,所以对于设置了这个mode的数据库,在使用group by 的时候,就要用MAX(),SUM(),ANT_VALUE()的这种聚合函数,才能完成GROUP BY 的聚合操作。

解决方法:

1、首先查询你的数据库是否包含:only_full_group_by

select @@global.sql_mode

2、如果包含接着下面的步骤,修改my.cnf

vim my.cnf

找到sql_mode 去掉only_full_group_by

如果没有sql_mode 追加如下代码:

sql_mode=STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

3、重启mysql

systemctl restart mysqld

相关推荐
爱基百客12 分钟前
从人鼠到植物:SEdb 3.0数据库一站式检索与分析超级增强子调控网络
数据库·国自然·转录因子·组蛋白修饰·增强子
来来走走17 分钟前
rocky linux 9.7安装mysql 8.4+
linux·数据库·mysql
怣5032 分钟前
MySQL多表连接完全指南:内连接与外连接超详细讲解
数据库·sql·mysql
专注VB编程开发20年44 分钟前
python图片验证码识别selenium爬虫--超级鹰实现自动登录,滑块,点击
数据库·python·mysql
智商偏低1 小时前
Postgresql导入几何数据(shp,geojson)的几种方式
数据库·postgresql
我是Superman丶1 小时前
在 PostgreSQL 中使用 JSONB 类型并结合 MyBatis-Plus 实现自动注入,主要有以下几种方案
数据库·postgresql·mybatis
五度易链-区域产业数字化管理平台1 小时前
「五度易链」行业标准信息数据库简介
大数据·数据库
qinyia1 小时前
通过本地构建解决Cartographer编译中absl依赖缺失问题
linux·运维·服务器·mysql·ubuntu
霖霖总总2 小时前
[小技巧65]深入 InnoDB 页的逻辑存储结构:16KB 页的逻辑全景解析
数据库·mysql
数研小生2 小时前
关键词搜索京东列表API技术对接指南
大数据·数据库·爬虫