欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SQL | MySQL分组查询每组最新的一条数据

程序员文章站 2022-04-09 22:49:27
...

适用于主键自增的情况,即使创建时间在少数情况下一样也不影响,因为是根据自增的主键进行查找(最新的数据主键肯定是最大的,也就是最新的数据后插入数据库)
SQL | MySQL分组查询每组最新的一条数据

select id, msg_content, msg_create_time
from safety_promotion_msg spm
         inner join (select max(id) max_id from safety_promotion_msg group by msg_content) a on a.max_id = spm.id;

SQL | MySQL分组查询每组最新的一条数据
如果主键不自增则取最大的时间,即max(msg_create_time),再将创建时间字段使用时间戳,防止创建时间一致的情况,保证精度最高。

相关标签: MySQL