MySQL 8 groupby 禁用,无效解决办法
MySQL8 默认不支持GroupBy,可通过如下命令查询,如果发现 ONLY_FULL_GROUP_BY 则说明未开启 GroupBY。
开启前查询结果:
mysql> select @@sql_mode;
+----------------------------------------------------------------------------------------------------+
| @@sql_mode |
+----------------------------------------------------------------------------------------------------+
| ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION |
+----------------------------------------------------------------------------------------------------+
开启 GroupBY:
vim /etc/mysql/mysql.conf.d/mysqld.conf
# [mysqld] 修改或添加如下配置
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
重启 MySQL 后查询结果:
mysql> select @@sql_mode;
+----------------------------------------------------------------------------------------------------+
| @@sql_mode |
+----------------------------------------------------------------------------------------------------+
| STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION |
+----------------------------------------------------------------------------------------------------+
本文介绍了MySQL8默认禁用GROUPBY的情况,提供了如何通过修改`sql_mode`配置来启用GROUPBY功能的方法,包括查询初始模式和重启MySQL后的结果。
1671

被折叠的 条评论
为什么被折叠?



