Mysql5.7版本ERROR 1055问题

Posted pcxx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql5.7版本ERROR 1055问题相关的知识,希望对你有一定的参考价值。

Sql优化过程中遇到Sql执行错误:

ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘advanced.dept.deptno’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

问题出现原因:

在5.7以上的版本实现了对功能依赖的检测,mysql默认启用了only_full_group_by SQL模式,

对于GROUP BY聚合操作,如果在SELECT中的列,没有在GROUP BY中出现,那么这个SQL是不合法的,除非这个字段出现在聚合函数里面。

但个人由于没有必要使用聚合函数,所以,做了取消检测。

 

网上有很多处理的办法,但是操作还是复杂了,下面列出快速解决问题:

先如今云服务器,云数据库越来越多,当你用云服务器时,不过过多的去配置mysql参数,然后又报权限问题、还得找密码、手动重启mysql。下图一招直击要害

技术图片

 

以上是关于Mysql5.7版本ERROR 1055问题的主要内容,如果未能解决你的问题,请参考以下文章

Mysql5.7以上版本group by报错问题

mysql5.7 1055

MySQL5.7.25报1055错误解决方案

Mysql5.7 Linux安装教程

TP3.2项目 MySQL5.7报错1055 group by新特性

对存在过期 binlog 的 MySQL5.7 添加从服务器