【环境介绍】
系统环境:腾讯云 + 5.7.18+Navicat 11.2.7(客户端)
【情况描述】
早上执行update语句报错分析:
使用Navicat 11.2.7版本执行报错
UPDATE shx_xxx.user_xxx SET roxx_id='xxxxxxxxxxxxxxxxxx0001' WHERE usxx_id='xxxxxxxxxxxxxxxxxx35';
报错信息:
[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column
'information_schema.PROFILING.SEQ' which is not functionally dependent on columns in GROUP BY clause;
this is incompatible with sql_mode=only_full_group_by
【情况分析】
查看报错信息提示only_full_group_by,该报错一般是在查询时候用到,单纯的update语句且条件没有group by跟order by语句,比较奇怪
查看sql_mode解释:
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
ONLY_FULL_GROUP_BY为MySQL 5.7.4版本的新增的参数: