mysql5.7 彻底解决sql_mode=only_full_group_by

ONLY_FULL_GROUP_BY是mysql默认的一种sql模式,其作用是约束sql语句:要求select中的所有字段,除复合函数外,全部要出现在group by中。


默认这种模式是有原因的,因为滥用gourp by可能会得到错误的结果,但是这里不做讨论。
那么如何禁用这种模式呢,执行以下命令:

 

$ # 查看sql_mode配置
$ mysql> select @@sql_mode

要想永久禁用,将sql_mode写入 /etc/mysql/mysql.conf.d  下的 mysqld.cnf 配置文件即可。

[mysqld]
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

systemctl restart mysql

posted @   G-Beniot  阅读(2285)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示