本文主要是介绍Mysql报错:1140 - In aggregated query without GROUP BY, expression #2 of SELECT list contains nonaggreg,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
![](/upload/202206/08/202206080220096267.png)
经查阅资料得知,
在MySQL5.7版本之后对group by进行了优化。默认启动改进之后的版本启动了ONLY_FULL_GROUP_BY模式。
即ONLY_FULL_GROUP_BY是MySQL数据库提供的一个sql_mode,通过这个sql_mode来保证SQL语句“分组求最值”合法性的检查。这种模式采用了与Oracle、DB2等数据库的处理方式。即不允许select target list中出现语义不明确的列。
解决方式:
只要有聚合函数sum(),count(),max(),avg()等函数就需要用到group by
这篇关于Mysql报错:1140 - In aggregated query without GROUP BY, expression #2 of SELECT list contains nonaggreg的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!