Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column
原因:
- MySQL版本5.7之后会检测函数依赖,默认启用的模式是ONLY_FULL_GROUP_BY,使用GROUP BY 语句违背了sql_mode=only_full_group_by。该模式的意思是只有确定唯一字段的group by才能执行
- select 查询的字段没有在group by字句里面(SQL不规范)
临时解决:数据库执行
set@@global.sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
修改my.cnf配置文件里面的sql_mode参数值,并重启mysqld服务