我有一個web API,它根據最後收到的項目的ID返回x個項目的下一個「集合」。所以,如果我的最後一個項目ID是30,我想要50個,那麼我應該得到ID 31 - 81.SQL - 獲取下一組xx項目
如果我實現了一個SQL查詢,說SELECT * FROM table WHERE ID > 30 LIMIT 50
,我保證得到ID 31-81?或者,有沒有辦法做到這一點? ID列是AUTOINCREMENT。
此外,這是SQLite,具體而言。我不確定這是否重要。
我有一個web API,它根據最後收到的項目的ID返回x個項目的下一個「集合」。所以,如果我的最後一個項目ID是30,我想要50個,那麼我應該得到ID 31 - 81.SQL - 獲取下一組xx項目
如果我實現了一個SQL查詢,說SELECT * FROM table WHERE ID > 30 LIMIT 50
,我保證得到ID 31-81?或者,有沒有辦法做到這一點? ID列是AUTOINCREMENT。
此外,這是SQLite,具體而言。我不確定這是否重要。
你也應該通過ID責令其限制的結果
SELECT * FROM table WHERE ID > 30
order by ID
LIMIT 50
的數量通常在SQLite的,你會做這樣的事情之前:
SELECT * FROM table LIMIT 50 OFFSET 30;
ID列是否有間隙,如刪除的記錄? – pilcrow 2012-07-16 01:46:56
是的,它可以。但ID列是AUTOINCREMENT,所以我不認爲這會是一個問題。 – user1032657 2012-07-16 19:47:00