代码启动之后,打开页面空白,一看后台报错sql_mode=only_full_group_by
一开始还以为是我sql写的有问题,一直在解决sql问题,后来才知道原来是mysql版本的问题,5.7以上版本默认的 MySQL 配置中 sql_mode 配置了 only_full_group,需要 GROUP BY 中包含所有 在 SELECT 中出现的字段
所以对于设置了这种mode的数据库,在使用group by 的时候,就要用MAX(),SUM()等的这种聚合函数,才能完成GROUP BY 的聚合操作
报错信息如下:
![]()
最简单的解决方案就是在navicat,执行下列语句
SET GLOBAL sql_mode='STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION';
解决MySQL5.7以上版本only_full_group_by报错问题
1179





