首页 > 数据库技术 > 详细

mysql5.7 之 sql_mode=only_full_group_by问题

时间:2019-08-16 12:47:20      阅读:86      评论:0      收藏:0      [点我收藏+]

在使用查询时,使用到了group by 分组查询,报如下错误:

ERROR 1140 (42000): In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column test.fruits.s_id; this is incompatible with sql_mode=only_full_group_by

报这个错是由于sql_mode 使用了ONLY_FULL_GROUP_BY

解决办法:

1、执行SET GLOBAL sql_mode = ‘‘; 把sql_mode 改成非only_full_group_by模式。验证是否生效 SELECT @@GLOBAL.sql_mode 或 SELECT @@sql_mode
SET sql_mode =‘STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION‘; #这种方式只对当前会话有效。
2、如果想要全局生效,需要修改my.cnf配置文件在mysqld组里面添加如下值,然后重启mysql
sql_mode =‘STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION‘

 

mysql5.7 之 sql_mode=only_full_group_by问题

原文:https://www.cnblogs.com/yjt1993/p/11362954.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!