Mysql获取pk和date不同的各组的最新记录

标签 mysql

我有以下列的表格

  • pk - bigint - 主键
  • 时间戳 - int(11)
  • id - int(4)
  • 一些额外的列

id + 时间戳可以重复

我想在单个查询中获取每个id的最新记录

目前我对每个项目 id 运行以下查询

select data.* from (
select pk from data 
    where 
     id = 1001
     order by timestamp desc, pk desc
     limit 1)

最佳答案

试试这个:

Select d.*
  From data d
 Where d.pk in ( select max(d2.pk)
                   From data d2
               Group by d2.id, d2.timestamp
                )

关于Mysql获取pk和date不同的各组的最新记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20166687/

相关文章:

mysql - 如何微调AWS R4 Aurora MySql数据库

c# - 读取 MySQL JSON 数据类型并将其转换为 C# 中的 List<Int>

php - 在 MySQL 中比较字符串时遇到问题

mysql - 远程访问MySQL服务器

PHP mysqli - 使用 DELETE 的结果

mysql - 如何在多个连接表中插入数据

php - 如何在 Angular JS中将selectBox中的数据填充为默认从mysql数据库中选择的当前项目

mysql - 奇怪的 MySQL 错误 #1242 - 子查询返回超过 1 行

mysql - 我可以从数据库字段中选择更新吗

php - 将 Blob 内容插入另一个 Blob (MySQL)