报错内容
SELECT list is not in GROUP BY clause and contains nonaggregated column ...
报错原因
MySQL5.7.5后only_full_group_by成为sql_mode的默认选项之一,导致一些sql语句失效,比如group by进行分组查询
查看sql_mode配置
在命令行输入命令查看sql_model配置:select @@sql_mode;
如果查询结果有ONLY_FULL_GROUP_BY, 即为报错的原因
解决办法
打开MySQL安装目录下的my.ini文件,如果没有就创建,在文件的末尾添加:
sql_mode = STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION