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。下图一招直击要害

猜你喜欢

转载自www.cnblogs.com/pcxx/p/11085616.html
今日推荐