IOS Sqlite数据库 - 按批次记录重新遍历

时间:2013-07-10 05:12:26

标签: ios sqlite

我在我的项目中使用sqlite3数据库。为此我可以使用以下查询“select * from tablename”来从数据库中检索数据..

但是我想从数据库中获取100个序列记录,比如如果我根据我想要的100个记录来滚动UITableView。

我试过以下的事情, SELECT * FROM mytable ORDER BY record_date DESC LIMIT 100; - 它只回收100条记录。当我滚动表格时,我想获取接下来的100条记录并显示它。

是否可以这样做

请指导我。

1 个答案:

答案 0 :(得分:1)

您可以简单地使用OFFSET clause,但这仍然会迫使数据库计算您正在跳过的所有记录,因此对于更大的表来说它会变得效率低下。

您应该做的是保存上一页的最后record_date值,并继续以下内容:

SELECT *
FROM MyTable
WHERE record_date < ?
ORDER BY record_date DESC
LIMIT 100

有关详细信息,请参阅https://www.sqlite.org/cvstrac/wiki?p=ScrollingCursor