首页 > 解决方案 > SQL如何选择具有特定值的最新记录

问题描述

我试图自己找到答案,但我做不到。我有表:

Id | val
1 | 4
2 | 5
3 | 4
4 | 6
5 | 4

我想选择最后 2 个值为 4 的 ID。输出应该是

Id | val
3 | 4
5 | 4

标签: mysqlsql

解决方案


@Fahmi 的查询可能会有所改进:

SELECT id, val
FROM (
    SELECT id, val
    FROM your_tablename
    WHERE val = 4
    ORDER BY `id` DESC
    LIMIT 2
) AS t
ORDER BY t.id ASC

演示 - http://sqlfiddle.com/#!9/eb1227/1


推荐阅读