选择未包含在SQLite表中的值(不是表中的值)

时间:2015-09-07 08:03:38

标签: sqlite

在我的Windows Phone 8.1应用程序中,我有一个SQLite表,其中在定期扫描后插入文件夹Camera Roll中包含的每个文件。我想了解一下,鉴于Camera Roll中的所有文件列表(由4 OS提供),哪一个尚未插入表中。我正在使用文件路径作为每条记录的唯一标识符,所以问题是:

是否有查询来查找文件表中是否包含哪些文件路径(未包含在表中,只是内存中的字符串列表)?我应该创建一个表来包含我在内存中的文件路径吗?我应该使用一些临时结构吗?

1 个答案:

答案 0 :(得分:0)

如果您的文件已经排序,或者具有相同的其他类型的索引,那么您可以遍历“旧”文件。来自数据库的文件,并为每个文件标记相应的“新”文件。一,如果它存在。其余的都是新的。

如果数据库有一个索引,你可以循环使用' new'文件,并为每个文件检查它是否在旧的'数据库中的表。

如果要在数据库中执行所有操作,可以使用所有内存中的文件创建临时表。 比较这两个表最终只是一个SQL查询,但实际上创建临时表可能效率不高。