我有一个场景,我需要按升序顺序获取一组结果,但只给出降序序列中的最后一个ID。
由于 ID 是自动生成的,因此顺序将始终按升序排列,但我无法保证 ID 序列是完整的。即我不能说 8 - 3 = 5 因此从 5 开始向前查找。
最有效的是实现这一点。如果可能的话,我想避免在应用程序逻辑中操作集合,但可以作为最后的手段。
最佳答案
您可以使用内部选择:
SELECT *
FROM (
SELECT *
FROM your_table
WHERE id <= X
ORDER BY id DESC
LIMIT Y
) d
ORDER BY id ASC
关于具有正向结果的 MySQL 向后查找,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44175902/