如何比较具有相同结构的两个表并使用Realm查找不匹配的记录?

时间:2016-07-14 15:11:30

标签: android realm

SQL-based系统很容易,但是如何在Android上使用Realm?我真的必须迭代这两个表,如:

foreach(TABLE-1)
    foreach(TABLE-2)
        if(TABLE-1.item == TABLE-2.item) ...
        else ...

为什么需要它?我用ids解析待处理文章的列表,并说出1, 2, 3。我将它们存储在状态为TABLE-1的{​​{1}}中。在我再次解析待处理文章列表之后,这次我说PENDING。所以我必须阅读新获得的文章并检查:

  • 已在2, 3, 4中(因此我使用新下载的内容更新了TABLE-1的内容)
  • 不在2, 3中(因此我将TABLE-1添加到4状态TABLE-1,因为它是新的)
  • 位于PENDING但未被提取(因此我将文章TABLE-1移至州1,因为它不是从待处理列表中提取的结果。)

所以我的想法是将这些新解析的文章FINISHED存储在2, 3, 4中,然后将其与TABLE-2进行比较。

2 个答案:

答案 0 :(得分:1)

你不能用Realm做到这一点,但你也不需要在第一时间。您可以使用一个模式类和正确定义的指示状态的查询/标志来解决此问题。

答案 1 :(得分:0)

是的,您必须,Realm不支持这样的“架构”比较! Realm是一个移动数据库,不需要有两个具有相同结构的模式!