如何查询大量选择参数?

时间:2012-05-12 12:18:40

标签: android sqlite

我遇到的情况是我可以解决,但正在寻求更好的方法。它是:

  • 我在Android设备上有8,000多首歌曲。也就是说,Android的Audio.Media有8,000多行。
  • 也就是说,我有一个包含2,000个路径的数组,我需要在数据库中查询相应文件的其他列。

现在我使用resolver.query(URI, "_data IN (?,?,?........,?)", selectionArgs, null);

但是如果?太多而不是600或更多,则查询将失败,因为WHERE子句变得太长。

因此,我将2,000条路径分为四个部分,查询每个部分并保存其他地方所需的信息。通过四次查询,我可以得到结果。但这会消耗大量内存,如果我可以通过一个查询来完成,那么它将比4更快。

有没有人有更好的方法来做到这一点?谢谢!

0 个答案:

没有答案