MySQL报错1055翻译为“无法给包含一个非聚合的列进行分组,这个功能不再依赖分组,且与新的规则不兼容sql_mode=only_full_group_by”
此时将select字段全部修改为聚合函数即可。但这不满足很多时候的需求,因此可以修改配置文件。
第一步:查看现在的规则
select @@sql_mode;
发现里面有only_full_group_by。
第二步:找到配置文件,修改sql_mode
①电脑搜索服务,找到MySQL,鼠标右键查看属性
②找到默认配置文件路径
③在文件资源管理器输入路径,找到配置文件
④建议以管理员方式打开记事本,在记事本中文件--打开--输入路径--右下角选择全部文件,选中my.ini这个配置文件,打开。此时可以编辑配置文件了。
⑤Ctrl+F快捷键查找sql_mode,如果没有,就查找sql或者mode一个一个找,可能被换行书写了,注意眼睛仔细找。
⑥删除only_full_group_by,保存。
三、重启数据库服务
四、再次执行select @@sql_mode;此时已经没有only_full_group_by