MySQL 分组选出某值最大的一行数据(需要加 limit)

MySQL 分组选出某值最大的一行数据(需要加 limit),第1张

在mysql中使用group by进行分组后取某一列的最大值,我们可以直接使用MAX()函数来实现,但是如果我们要取最大值对应的ID

那么我们需要取得整行的数据该怎么办?

起初搜寻到的资料是这样的:

首先按照 create_time 倒叙排序,然后分组,那么每个分组中排在最上面的记录就是时间最大的记录

但是结果不是这样的,经过搜集资料,得出需要在排序后边加 limit 10000000000

如果不加的话,数据不会先进行排序,通过 explain 查看执行计划,可以看到没有 limit 的时候,少了一个 DERIVED *** 作。

你好,很高兴回答你的问题。

假设是要按照表t中的字段a进行分组,取分组中b字段的最大值,那查询sql是下面这样:

select a,max(b) from t group by a。

如果有帮助到你,请点击采纳。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8698515.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-20
下一篇 2023-04-20

发表评论

登录后才能评论

评论列表(0条)

保存