2015-10-13 55 views
0

想象的数据集: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下一个值,并保证,如果有一定的差距,我现在回到最后已知的值,因此:

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

非常感谢你对任何输入到这一点。

回答

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

它可能不会表现得很好,但看起来它会做你想做的。