mysql5.7遇到group_by解决方法
原因
mysql 5.7 模式中。默认启用了ONLY_FULL_GROUP_BY。
ONLY_FULL_GROUP_BY是MySQL提供的一个sql_mode,通过这个sql_mode来提供SQL语句GROUP BY合法性的检查。
解决
这样可以修改一个会话的配置项,在其他会话中是不生效的。
这样可以修改整个工作环境的配置。
修改完通过上面两条sql进行查询,就会看到ONLY_FULL_GROUP_BY这个没有了。
但还是建议使用ANY_VALUE()这个函数,因为上述方法重启mysql后就无效,MySQL提供ANY_VALUE()函数来抑制ONLY_FULL_GROUP_BY值被拒绝。

浙公网安备 33010602011771号