关于mysql 1055的异常处理记录,ONLY_FULL_GROUP_BY 是 group规则, select的列都要在group中,或者本身是聚合列(SUM,AVG,MAX,MIN) 才行.
这里我执行的是group by操作。select * from order group by user_id
网上方法很多,好多也都是修改mode然后重启,但是有的时候数据库根本没办法重启,比如生产环境。那我们怎么处理呢?
简单暴力:
可以在我们的Navicat连接工具上查看sql_mode
SELECT @@SESSION.sql_mode;
重新设置sql_mode
set SESSION sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION ';
完美解决!