今天在使用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相关推荐

  1. TP3.2项目 MySQL5.7报错1055 group by新特性

    TP3.2项目中本来使用的是mysql5.6进行开发,切换到5.7之后,突然发现原来的一些sql运行都报错,错误编码1055,错误信息和sql_mode中的"only_full_group_ ...

  2. linux mysql libc.so_mysql-arm-linux-gcc编译报错:libc.soformatnotrecognized.

    小弟新手,之前没接触过arm开发,这两天做毕设碰到了难题,请大家帮忙看下, 先行谢过! 我的开发板是一个实验室网关(HBE-UBI-box2),用来收集传感器传来的信息的.将写好的C文件通过arm-l ...

  3. linux mysql libc.so_mysql-arm-linux-gcc编译报错:libc.so format not recognized.

    小弟新手,之前没接触过arm开发,这两天做毕设碰到了难题,请大家帮忙看下, 先行谢过! 我的开发板是一个实验室网关(HBE-UBI-box2),用来收集传感器传来的信息的.将写好的C文件通过arm-l ...

  4. mysql创建表报错1055的原因_[Err] 1055

    mysql 创建表是出现[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains non ...

  5. [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 ...

  6. msvcp120 mysql_MySql压缩版安装及避免1055错误和msvcp120.dll丢失

    MySql压缩版安装及避免1055错误和msvcp120.dll丢失 MySQL压缩版的安装快速方便,5.7及最新的8版本安装方式大致相同. 在使用group by分组时,可能会遇到1055错误. 另 ...

  7. mysql persistent_MySQL关于InnoDB的几个错误

    阿里云服务器上装有MySQL 5.6,这几天MySQL服务经常死掉,启动MySQL服务(service mysql start),却报如下错误 Starting MySQL.. ERROR! The ...

  8. linux系统mysql报err1055_MySQL Err 1055的解决

    同事在5.7.14的mysql上创建的表,需要在服务器上同步,但是小版本变成了5.7.17(不知道与版本有没有关系) 在Navicat里执行创建表的sql命令时,报错Err 1055 [Err] 10 ...

  9. 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 ...

最新文章

  1. 编程之美2.16 最长递增子序列
  2. 学霸孩子必备的三种思维,编程思维的速成方法
  3. 2015年绿盟面试题
  4. python ioc di_PHP的依赖注入(DI) 和 控制反转(IoC)
  5. Reflection.Emit的使用场景、工具包及示例总结
  6. 不用asp.net MVC,用WebForm照样能够实现MVC
  7. 假如王撕葱是程序员。。。
  8. 2017.10.19 大陆争霸 思考记录
  9. Tunnels 状压DP+BFS
  10. 利用POI 技术动态替换word模板内容
  11. 23种设计模式及其应用场景
  12. PHP之封装梦网云通讯短信发送类
  13. jszip 解压压缩包_Node.js使用jszip实现打包zip压缩包
  14. 【进阶版】伪东方project的游戏制作
  15. wireshark 找不到wifi网卡
  16. uniapp开发微信公众号网页-微信JSSDK使用
  17. unity 3d 原创制作射击游戏(一)
  18. JAVA 中IO总结 之前篇阻塞、非阻塞
  19. 在CMD下使用sc命令,报openservice failed 1060错误
  20. 百度灵医智惠明星案例获人民日报点赞:智慧医疗让看病更便捷

热门文章

  1. vue中computed、methods、watched比较
  2. 阻碍iPhoneXS Max回收的是什么
  3. JavaScript微信号正则校验
  4. .Net 反射(Reflection)
  5. 如何将CAJ文件转换成PDF文件?教你一招搞定
  6. python定制手机套餐_利用Python实现高度定制专属RSS
  7. 基于Android的计步器(Pedometer)的讲解(二)——柱状图分析2
  8. win11家庭版远程桌面无法连接,出现“这可能是由于CredSSP加密数据库修正问题”解决方案
  9. 我们到底需要什么样的机器人!
  10. npm安装的坑浏览器代理