1.序

mysql8与mysql5相比有很多改变,如mysql8中GROUP BY,要显示所有字段,而报错。

实际上,可以使用any_value()函数来抑制错误。

2.解决方案

网上有人说需要修改my.ini配制文件,很不推荐,这样会失去mysql8的优势。

推荐使用any_value()函数来抑制错误,最终解决方案,还是推荐mysql8的语法。如:

mysql 5写法:SELECT name, code FROM table GROUP BY name order by id

mysql 8抑制错误写法:SELECT name, any_value(code) AS code FROM table GROUP BY any_order by(id)