领域嵌套查询 - 计算对象集合中至少有一项满足条件的对象

时间:2017-10-31 20:05:48

标签: android realm

我有两个Realm对象,Ticket和Message。

public class Ticket extends RealmObject {
    @PrimaryKey
    private Long id;
    private RealmList<Message> messages;
}

public class Message extends RealmObject {
    @PrimaryKey
    private Long id;
    private String text;
    private boolean read;
}

我想要返回至少有一条未读消息的票数。在此示例方案中,将计算故障单1和3,但不会计算故障单2,因为已读取这两个消息:

Ticket 1    
    - Message 1: Read
    - Message 2: Unread
Ticket 2
    - Message 1: Read
    - Message 2: Read
Ticket 3
    - Message 1: Unread
    - Message 2: Unread

这是否可以在领域中使用嵌套查询?

1 个答案:

答案 0 :(得分:3)

我认为你在寻找的是

MapDifference<String, String> mapDifference = Maps.difference(currValue, previousValue);

return !mapDifference.entriesOnlyOnLeft().isEmpty() 
        || !mapDifference.entriesDiffering().isEmpty();

有关详细信息,请访问Link Queries