mysql8.0版本默认的配置是带有ONLY_FULL_GROUP_BY
可以使用select @@GLOBAL.sql_mode; 查看,再通过set去修改配置
set @@GLOBAL = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
但这种解决方式会导致重启mysql服务后再次出现此问题
一劳永逸的解决办法是修改mysql的配置文件
sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION"