解决mysql5.7版本中,子查询order by后,对子查询进行group by分组获取最新记录无效的问题

news2024/11/14 1:50:00

目录

    • 场景简介
    • 原因
    • 示例
      • mysql5.7之前的版本
      • mysql5.7之后的版本
      • 解决
        • 1、使用having
        • 2、使用limit
        • 3、使用子查询获取目标数据ID


场景简介

子查询order by后,对子查询进行group by分组获取最新记录失败

应用场景:一对多的关系,通常需要取最新、最近的一条数据


原因

在 5.7 版本中引入新特性 derived_merge 优化过后,group by子句中使用order by会导致order by失效


示例

在mysql执行以下sql

SELECT ID, IsSystem from (
	SELECT * from t_user_role  ORDER BY id desc
) as t  GROUP BY IsSystem

mysql5.7之前的版本

当前mysql版本为5.6.51

在这里插入图片描述


各分组最大ID

在这里插入图片描述


对排序后的结果集进行分组,该SQL返回的数据与预期一致

在这里插入图片描述


mysql5.7之后的版本

当前mysql版本为5.7.23

在这里插入图片描述


各分组的最大ID

在这里插入图片描述


对排序后的结果集进行分组,该SQL返回的数据与预期不一致

在这里插入图片描述


解决

1、使用having

在这里插入图片描述


2、使用limit

在这里插入图片描述


3、使用子查询获取目标数据ID

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1701890.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

好消息!PMP纸质证书可以领取啦!(22年11月至23年8月)

上周五,中国国际人才交流基金会官方发布了《关于2022年11月和2023年3月、5月、8月PMI认证考试证书领取》的通知,具体内容如下: 之前顺利通过PMP/ACP/PgMP考试的同学抓紧时间,在5月24日—6月10日内进入官网上登记领取证书。 PMP考…

1990-2021 年全球油棕面积和种植年份数据集

简介 该数据集利用 2016 年至 2021 年的哨兵-1 号数据,以 10 米的分辨率提供了油棕种植园的全球综合地图,包括工业用地和小农地块。此外,该数据集还包括根据 Landsat-5、-7 和-8 图像得出的 1990 年至 2021 年 30 米空间分辨率的种植年份估计…

UE驻网失败问题(二)

另一个UE注册失败的问题,具体过程如下: 问题现象如上,UE在这个N48上的小区一直在重复上述过程,收到RRC Setup后就不发RRC Setupcomplete,闭上眼睛也知道大概率是这个RRC Setup的配置有问题。 在问题时间点周围查看&…

TI_DSP_F2808学习笔记3: ePWM

共有6组ePWM,每一组 ePWM 模块都包含以下 7 个模块:时基模块 TB、计数比较模块 CC、动作模块 AQ、死区产生模块 DB、PWM 斩波模块 PC、错误联防模块 TZ、时间触发模块 ET。 时基模块 TB 确定PWM的周期和相位。 1)PWM 时基计数器&#xff…

使用vue,mybatis,mysql,tomcat,axios实现简单的登录注册功能

目录 第一步环境搭建 后端: 前端: 第二步画流程图 web: service: dao层: 第三步前端代码的实现 这是开始的页面,接下来我们要到router路由下书写#login的路径 路由中的component在我们自己创建的views书写vue文件…

数据库语法树优化

目录 一、σ、π、⋈ 1.选择σ 2.投影π 3.连接⋈ 二、 构建语法树 ① 解读sql语句 ② 写出关系代数表达式 ③ 画出语法树 三、优化语法树 四、练习 语法树优化方法 一、σ、π、⋈ 1.选择σ 选择就是在关系R中选择满足给定条件的诸元组。 通过条件SdeptIS选择出系别…

某安全厂商外包安服工程师面试

写在前面:本篇帖子出现的厂商and面试问题皆为up实际面试情况,厂商信息不透露,仅供师傅们参考。 背景 某知名安全厂商外包 岗位:安全服务工程师(偏售后) 薪资条件:7~9k(up所在二线…

Nssm打包.netcore控制台程序到Windows服务,实现长Ping服务器

需求:应客户需求,现场服务器和客户端之间网络总是不稳定。导致客户端总是和服务器断开连接。为了监测网络,且为了不容易让用户误操作停止监测,所以采用控制台程序打包成windows服务的方式实现。并且加一个winform程序,…

CLI举例:负载分担场景下的源NAT配置(主备设备共用同一个地址池)

CLI举例:负载分担场景下的源NAT配置(主备设备共用同一个地址池) 组网需求 如图1所示,企业的两台FW的业务接口都工作在三层,上下行分别连接路由器。FW与上下行路由器之间运行OSPF协议。上行接口连接同一个ISP。 现在希…

Ubuntu18 配置FFmpeg开发环境 (Vscode+CMake)

关于Vscode插件安装不再赘述,本文主要讲解如何配置FFmpeg的开发环境以及CMake文件写法,如果不知道该安装什么插件请看本文: Ubuntu配置Vscode 文章目录 1.安装FFmpeg开发包2.配置Vscode项目3.使用C语言验证FFmpeg版本 1.安装FFmpeg开发包 更新…

白银现货价格对这两种形态形成突破 应当予以关注

在白银现货价格分析和交易中,突破这个行为一直是一个重要的、具有可分析性的市场动作。本文要讨论的,是基于价格形态之上的突破行为,下面我们就来看看。 中继形态的突破。白银现货价格波动中有中继形态有反转形态,中继形态的意思是…

经典获奖案例 | 度小满互联网金融开源软件治理解决方案

近日,广东省粤港澳合作促进会金融专业委员会和粤港澳大湾区金融创新研究院在广州联合举办“2024年粤港澳大湾区数智金融峰会暨第二届金融创新优秀应用案例与解决方案技术成果授牌仪式”。《度小满互联网金融开源软件治理解决方案》从数百个申报项目中脱颖而出&#…

字符串函数(2)<C语言>

前言 快一周没更博客了,最近有点忙,今天闲下来了,还是不行,继续干,书接上回继续介绍字符串函数:strncpy()、strncat()、strcmp()、strtok()使用、strstr()使用以及模拟实现、strerror()使用。 strncpy()、s…

几种流行的并行方法了解

几种流行的并行方法: 数据并行(data parallel)模型并行(model parallel) tensor并行pipeline并行sequence并行Zero Redundancy Data Parallelism(ZeRO) Data parallelism (DP) 经典的数据并行…

snmp学习小结

背景 很多厂商网络设备获取网络信息接口不一样,snmp用来统一接口 官网Net-SNMP 模型 每个主机可以安装自己的snmp agent,它可以监控目标机器的网络流量,当外部查询snmp信息时,请求会发到目标机器的snmp agent,由sn…

魅族应用市场驳回 安装包包含32位库,请处理32位库后再重新提交

问题出现 解决方法 打开HBuilerX找到项目的mainfest.json 取消cpu类型中armeabi-v7a的勾选。 armeabi-v7a 第7代及以上的ARM处理器(ARM32位),市面上大多数手机使用此CPU类型。 arm64-v8a 第8代、64位ARM处理器(ARM64位&#x…

Halcon 光度立体 缺陷检测

一、概述 halcon——缺陷检测常用方法总结(光度立体) - 唯有自己强大 - 博客园 (cnblogs.com) 上周去了康耐视的新品发布会,我真的感觉压力山大,因为VM可以实现现在项目中的80% 的功能,感觉自己的不久就要失业了。同时…

Java通过Html(ftl模板)生成PDF实战, 可支持商用

Java通过Html(freemarker模板)生成PDF实战, 可支持商用 技术架构 springboot freemarker [pdfbox] flying-saucer-pdf 生成流程: freemarker: 根据数据填充ftl模板文件,得到包含有效数据的html文件(包含页眉页脚页码的处理&#xff0c…

Delft3D水动力-富营养化模型(水质模型)教程

原文链接:Delft3D水动力-富营养化模型(水质模型)教程https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247605459&idx5&sn105e94f09f0589172835ce8204519971&chksmfa821d34cdf59422b4f6c39b243373a23836d79841a1fcd19f9…

超越中心化:Web3的去中心化应用探索

随着区块链技术的迅速发展,Web3作为其最前沿的应用之一,正引领着互联网进入了一个新的时代。Web3不仅仅是技术的进步,更是一种全新的思维方式和社会模式,其核心理念是去中心化、自治和透明,这与传统的中心化互联网模式…