位置: 编程技术 - 正文

Mysql升级到5.7后遇到的group by查询问题解决(mysql从5.7升级至8.0)

编辑:rootadmin

推荐整理分享Mysql升级到5.7后遇到的group by查询问题解决(mysql从5.7升级至8.0),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql5升级到8,mysql5.0升级到8.0,mysql5.5升级到5.6,mysql5升级到8,mysql5.5升级到5.6,mysql 5.5升级到5.7,mysql5.6升级到5.7,mysql5.6升级到5.7,内容如对您有帮助,希望把文章链接给更多的朋友!

发现问题

最近在将mysql升级到mysql 5.7后,进行一些group by 查询时,比如下面的

就会报如下错误:

原因分析

原因是mysql 5.7 模式中。默认启用了ONLY_FULL_GROUP_BY。

ONLY_FULL_GROUP_BY是MySQL提供的一个sql_mode,通过这个sql_mode来提供SQL语句GROUP BY合法性的检查。

Mysql升级到5.7后遇到的group by查询问题解决(mysql从5.7升级至8.0)

is incompatible with sql_mode=only_full_group_by这句话提示了这违背了mysql的规则,only fully group by,也就是说在执行的时候先分组,根据查询的字段(select的字段)在分组的内容中取出,所以查询的字段全部都应该在group by分组条件内;一种情况例外,查询字段中如果含有聚合函数的字段不用包含在group by中,就像我上面的count(id)。

后来发现Order by排序条件的字段也必须要在group by内,排序的字段也是从分组的字段中取出。 不明白的可以去看一下。

解决办法:

1.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即可正常执行sql.

2. 不去ONLY_FULL_GROUP_BY, 时 select字段必须都在group by分组条件内(含有函数的字段除外)。(如果遇到order by也出现这个问题,同理,order by字段也都要在group by内)。

3.利用ANY_VALUE()这个函数  function is useful for GROUP BY queries when the ONLY_FULL_GROUP_BY SQL mode is enabled, for cases when MySQL rejects a query that you know is valid for reasons that MySQL cannot determine. The function return value and type are the same as the return value and type of its argument, but the function result is not checked for the ONLY_FULL_GROUP_BY SQL mode.

如上面的sql语句可写成

我选用的是第3种方法。

总结

标签: mysql从5.7升级至8.0

本文链接地址:https://www.jiuchutong.com/biancheng/348650.html 转载请保留说明!

上一篇:详解mysql中的静态变量的作用(mysqlusing)

下一篇:Centos7 下Mysql5.7.19安装教程详解

  • 多交企业所得税可以放弃退税吗
  • 预计负债的三个基本要素
  • 研发费用属于哪个费用
  • 没有进项发票出口转内销
  • 预缴 汇算清缴
  • 个人独资企业个人所得税税率
  • 房地产企业对外投资案例
  • 房地产企业契税税率是多少
  • 对供应商的罚款怎么入账
  • 委托加工模具的费用计入什么科目?
  • 补发以前年度工资如何计税
  • 免税的苗木发票抵扣税费怎么算
  • 小规模纳税人第四季度怎么报税
  • 股权转让分期收款怎么企业所得税
  • 专票和国税额差很多
  • 已认证的发票如何冲红
  • 个人独资企业也要报税吗
  • 筹建期员工社保分录
  • 初级备考需要多长时间
  • 公司租土地建厂房应该怎么做账呢?
  • c盘垃圾太多需要重装系统嘛
  • 为什么Windows 7搜不到网
  • 慈善捐赠金额排行
  • 为员工租赁房屋产生的租赁费可以抵扣增值税和所得税吗
  • 认缴出资什么时候补齐
  • 建筑工程企业管理费包括哪些内容
  • 前端实现文件下载功能
  • 开发商没交税
  • qgc地面站源码
  • 苏格兰高地什么意思
  • vue3+ts+vite
  • symfony是最好的框架
  • 购买仓库计入什么科目
  • curl error6
  • 猿创设计科技有限公司
  • utermux命令
  • php+flash+jQuery多图片上传源码分享
  • 政府代建项目税收政策
  • 公账转给员工工资
  • 金蝶软件凭证修改怎么做
  • 政府会计累计盈余解析
  • vscode主题插件护眼
  • SQLite教程(四):内置函数
  • 【MongoDB for Java】Java操作MongoDB数据库
  • 金税四期的特点
  • 固定资产处置时发生的清理费用
  • 固定资产清理如何做账
  • 个税适用税率怎么确定
  • 实行自行申报的项目有哪些
  • 无形资产减值准备借贷方向增减
  • 库存商品怎么计提坏账
  • 房地产企业出售商铺交什么税
  • 固定资产申请报告
  • 应收账款占比高受哪些因素影响
  • 余额调节表的模板
  • 打印银行电子流水发到别人邮箱,能看到我的账户余额吗
  • 现金支付的范围包括
  • 个人开具发票需要税号吗?
  • 建筑公司的会计好做吗
  • 在centos上安装ftp服务应运行指令
  • 快启动u盘pe怎么安装系统详细图文教程
  • windows xp怎么打开
  • 联想随笔
  • pc是什么软件
  • win10打开iis管理器命令
  • perl date
  • 一些实用性较高的东西
  • 本科生面试的自我介绍
  • linux中的shell命令
  • webpack vue-loader
  • js实现二叉查找树
  • shell 1
  • node express 路由
  • 自定义dialog屏蔽按键
  • 地税局契税发票编号查询
  • 免征船舶吨税的范围
  • 车辆购置税税率多少
  • 广东2020医保缴费要多少
  • 江苏省国家税务局总局官网
  • 江苏省国税局局长
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设