我的编程空间,编程开发者的网络收藏夹
学习永远不晚

mysql5.7 gruop by报错this is incompatible with sql_mode=only_full_group_by

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

mysql5.7 gruop by报错this is incompatible with sql_mode=only_full_group_by

  1. 解析:在mysql 工具 搜索或者插入数据时报下面错误: ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column "database_tl.emp.id" which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
  2. 原因: 看一下group by的语法: select 选取分组中的列+聚合函数 from 表名称 group by 分组的列  从语法格式来看,是先有分组,再确定检索的列,检索的列只能在参加分组的列中选。 我当前Mysql版本5.7.17, 再看一下ONLY_FULL_GROUP_BY的意思是:对于GROUP BY聚合操作,如果在SELECT中的列,没有在GROUP BY中出现,那么这个SQL是不合法的,因为列不在GROUP BY从句中,也就是说查出来的列必须在group by后面出现否则就会报错,或者这个字段出现在聚合函数里面。
  3. 解决方法: (1) 只选择出现在group by后面的列,或者给列增加聚合函数;(不推荐) (2) 命令行输入: set @@GLOBAL.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"; 默认关掉ONLY_FULL_GROUP_BY!   这个时候 在用工具select 一下 SELECT @@sql_mode; SELECT @@GLOBAL.sql_mode; 发现已经不存在ONLY_FULL_GROUP_BY ,感觉已经OK。但是如果你重启Mysql服务的话,发现ONLY_FULL_GROUP_BY还是会存在的。 想要彻底解决这个问题 就得去改my.ini 配置(如果你们mysql 没有这个文件,就把my-default.ini 改成my.ini,我这个版本就是没有my.ini配置问题)   在 [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"; 
       

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

mysql5.7 gruop by报错this is incompatible with sql_mode=only_full_group_by

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

mysql5.7 gruop by报错this is incompatible with sql_mode=only_full_group_by

解析:在mysql 工具 搜索或者插入数据时报下面错误:ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated
2019-12-03

Mysql8报错this is incompatible with sql_mode=only_full_group_by问题

MySQL8中“thisisincompatiblewithsql_mode=only_full_group_by”错误提示指在ONLY_FULL_GROUP_BY模式下,未对所有非聚合列进行分组。解决方法包括:修改sql_mode设置为兼容模式或调整查询,如对所有非聚合列分组或使用子查询隐式分组。
Mysql8报错this is incompatible with sql_mode=only_full_group_by问题
2024-04-02

MySQL出现this is incompatible with sql_mode=only_full_group_by错误的解决办法

目录这个就是错误截图出现原因: mysql的版本问题解决办法:两种第一种:修改MySQL的配置文件第二种方法:修改自己的sql总结这个就是错误截图出现原因: MySQL的版本问题MySQL 5.7.5以上版本,实现了对功能依赖的检测。如果
2023-02-17

MySQL出现this is incompatible with sql_mode=only_full_group_by错误的解决办法

mysql是高版本,当执行group by时,select的字段不属于group by的字段的话,sql语句就会报错,下面这篇文章主要给大家介绍了关于MySQL出现this is incompatible with sql_mode=only_full_group_by错误的解决办法,需要的朋友可以参考下
2023-02-17

ORA-15300: File string is incompatible with this operation ORACLE 报错 故障修复 远程处理

文档解释ORA-15300: File string is incompatible with this operationCause: The file type was incompatible with the
ORA-15300: File string is incompatible with this operation ORACLE 报错 故障修复 远程处理
2023-11-05

ORA-01105: mount is incompatible with mounts by other instances ORACLE 报错 故障修复 远程处理

文档解释ORA-01105: mount is incompatible with mounts by other instancesCause: An attempt to mount the database discovered
ORA-01105: mount is incompatible with mounts by other instances ORACLE 报错 故障修复 远程处理
2023-11-04

编程热搜

目录