mysql group by 函数 分组后排序取第一条数据

select aa.*
from 你的操作的表名 as aa
right join (
	select 分组的那一列列名, max(排序的那一列列名+0) as max
	from 你的操作的表名
	group by 分组的那一列列名
	
) as bb
on bb.max = aa.排序的那一列列名and bb.分组的那一列列名 = aa.分组的那一列列名

为什么max(排序的那一列列名+0)这里要“+0” 因为再我的这个表中 排序的那一列列名 不是数组类型 是varchar 所以需要通过 “+0” 来将其转换成int类型 进行取最大值 (这个是看个人需求)

我操作的要分组的表
执行语句后的结果

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐