SQL选择数据并填充最终的差距 - 查询

时间:2015-10-13 08:18:20

标签: mysql sql

想象一下数据集:

ID, PRICE
12345, 100.1
12346, 101.1
12347, 100.2
12348, 100.0
12352, 100.3 <- GAP
12355, 100.4 <- GAP
12356, 100.6
12357, 103.2
...

问题: 我需要不断选择下一个值,直到数据集结束。 如何按ID选择下一个值,并确保如果有GAP,我将返回上一个已知值,以便:

12348 if i want 12349
12348 if i want 12350
12348 if i want 12351
12352 if i want 12352

非常感谢您对此的任何意见。

1 个答案:

答案 0 :(得分:1)

SELECT *
FROM myTable
WHERE ID <= 12350
ORDER BY ID DESC
LIMIT 1

它可能表现不佳,但看起来它会做你想要的。