Android如何在sqlite中检索以前和最后5条记录
在Android中,我需要知道如何在mysql中检索当前索引的前5条记录和最后5条记录 我只知道如何检索当前索引的前5条记录或最后5条记录 获取当前索引的前5条记录Android如何在sqlite中检索以前和最后5条记录,android,sqlite,Android,Sqlite,在Android中,我需要知道如何在mysql中检索当前索引的前5条记录和最后5条记录 我只知道如何检索当前索引的前5条记录或最后5条记录 获取当前索引的前5条记录 Select * from myTable Where myid < 10 order by myid DESC Limit 10 Select * from myTable Where myid > 10 order by myid ASC Limit 10 但我不知道如何将这两种说法结合起来。试试这个: SELE
Select * from myTable Where myid < 10 order by myid DESC Limit 10
Select * from myTable Where myid > 10 order by myid ASC Limit 10
但我不知道如何将这两种说法结合起来。试试这个:
SELECT *
FROM myTable
WHERE myid BETWEEN currentIndex-5 AND currentIndex+5 AND
myid <> currentIndex
编辑:
我假设中间列包含按顺序排列的数据,如1,2,3,4,n.要使用相同列数组合两个查询,请使用UNION: 由于SQLite不支持Union的直接子查询中的Limit,所以必须使用双选择
如果您希望对整个结果进行排序,只需在末尾的mid之前追加顺序即可。您可以上载表结构吗?只有当myid列包含连续值时,此操作才有效。如果表中的所有记录尚未删除,则此操作似乎是正确的。@Yaqub Ahmad:如果我的currentIndex为3,则会发生什么情况?应用程序会崩溃吗?
Select * from (Select * from myTable Where myid < 10 order by myid DESC Limit 10)
Union All
Select * from (Select * from myTable Where myid > 10 order by myid ASC Limit 10)