linux mysql 1055_linux mysql5.7报err 1055错误 sql_mode=only_full_group
今天在使用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
原因:
看一下group by的语法:
select 选取分组中的列+聚合函数 from 表名称 group by 分组的列
从语法格式来看,是先有分组,再确定检索的列,检索的列只能在参加分组的列中选。
mysql可能有些版本兼容了这个错误,但是我当前版本5.7.9,mac的terminal命令行会报错,
再看一下ONLY_FULL_GROUP_BY的意思是:对于GROUP BY聚合操作,如果在SELECT中的列,没有在GROUP BY中出现,那么这个SQL是不合法的,因为列不在GROUP BY从句中,也就是说查出来的列必须在group by后面出现否则就会报错,或者这个字段出现在聚合函数里面。
查看mysql版本命令:select version();
查看sql_model参数命令:
SELECT @@GLOBAL.sql_mode;
SELECT @@SESSION.sql_mode;
发现:
ONLY_FULL_GROUP_BY,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,
解决方法:
1.只选择出现在group by后面的列,或者给列增加聚合函数;
2.命令行输入:
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!
3,配置文件永久关闭
sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
linux mysql 1055_linux mysql5.7报err 1055错误 sql_mode=only_full_group相关推荐
- TP3.2项目 MySQL5.7报错1055 group by新特性
TP3.2项目中本来使用的是mysql5.6进行开发,切换到5.7之后,突然发现原来的一些sql运行都报错,错误编码1055,错误信息和sql_mode中的"only_full_group_ ...
- linux mysql libc.so_mysql-arm-linux-gcc编译报错:libc.soformatnotrecognized.
小弟新手,之前没接触过arm开发,这两天做毕设碰到了难题,请大家帮忙看下, 先行谢过! 我的开发板是一个实验室网关(HBE-UBI-box2),用来收集传感器传来的信息的.将写好的C文件通过arm-l ...
- linux mysql libc.so_mysql-arm-linux-gcc编译报错:libc.so format not recognized.
小弟新手,之前没接触过arm开发,这两天做毕设碰到了难题,请大家帮忙看下, 先行谢过! 我的开发板是一个实验室网关(HBE-UBI-box2),用来收集传感器传来的信息的.将写好的C文件通过arm-l ...
- mysql创建表报错1055的原因_[Err] 1055
mysql 创建表是出现[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains non ...
- [Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated解决
今天在使用MySQL查询时报了一个"[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and c ...
- msvcp120 mysql_MySql压缩版安装及避免1055错误和msvcp120.dll丢失
MySql压缩版安装及避免1055错误和msvcp120.dll丢失 MySQL压缩版的安装快速方便,5.7及最新的8版本安装方式大致相同. 在使用group by分组时,可能会遇到1055错误. 另 ...
- mysql persistent_MySQL关于InnoDB的几个错误
阿里云服务器上装有MySQL 5.6,这几天MySQL服务经常死掉,启动MySQL服务(service mysql start),却报如下错误 Starting MySQL.. ERROR! The ...
- linux系统mysql报err1055_MySQL Err 1055的解决
同事在5.7.14的mysql上创建的表,需要在服务器上同步,但是小版本变成了5.7.17(不知道与版本有没有关系) 在Navicat里执行创建表的sql命令时,报错Err 1055 [Err] 10 ...
- MySQL报错1055解决办法:[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains
[mysql报错1055 报错解决办法][Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and cont ...
最新文章
- webpack 单页面应用实战
- 关于ASp.net中的session失效问题的解决办法之一
- css 选择一列表菜单,css实现菜单列表随滚动条指定到对应内容
- QDD pricing determination does not trigger - set breakpoint to resolve it
- lucky前面加a还是an_lucky的用法
- 国内首家!平头哥宣布开源RISC-V内核MCU芯片设计平台;IBM驳斥谷歌量子霸权主张;Facebook将赔偿350亿美元……...
- TCP半连接队列(syns queue)和全连接队列(accept queue)
- 腾讯王者荣耀AI论文首次曝光:五AI王者局开黑与人类战队打成平手
- 岁月的脚步,被时间冲刷——如何修复EM ?
- Linux查看占用mem的进程脚本
- 【陆勤阅读】参加kaggle数据挖掘竞赛是怎样一种体验?
- poj 1503 Integer Inquiry高精度
- poj1017----模拟
- asp.net在前台web页面中使用Javascript调用RTX腾讯通的聊天窗口
- AMBA_AXI总线详解
- 金葵花股票资金操盘大赛3号选手张朝阳关于疫情对A股市场影响的观点
- 微信第三方平台服务器,微信三方平台接入
- linux 命令 aft,AFT整理出来的NPC检测命令大全
- 【FPGA学习笔记】VHDL语言(五)语言风格描述:行为描述,数据流描述,结构化描述
- 51单片机之蜂鸣器弹钢琴
热门文章
- java过山车手游,过山车工艺手游(Roller Coaster Craft)
- 二手3C市场观察|平台掌握“赛点”后,头部综合垂直回收平台出路在哪?
- [转]微信小程序开发:从小白开发出通过自拍预测年龄和颜值的小程序
- @DateTimeFormat和@JsonFormat介绍
- [imx6ull]ADC编程-烟雾传感器采样
- Android动态修改桌面图标新坑总结
- Unity URP Planar reflection 平面反射
- 崩坏3 ios 转 android,崩坏3三周年安卓与IOS是否可以互通
- 图片处理——NDK实现人脸抠图
- linux脚本添加source,shell中的source命令的巧妙用法