Android Realm查询不同的外键

时间:2017-03-02 14:09:52

标签: android realm

我在Android应用程序中使用Realm,我有2个模型:TransactionCategory。每个事务都有一个Category的外键。我想做一个查询,在那里我找到所有具有外键引用的类别。

public class Transaction extends RealmObject:
    public Category category;
    ... other fields

我试过这个以获得具有不同类别的唯一交易列表:

RealmResults<Transaction> transactions = 
            realm.where(Transaction.class).distinct("category");

但它不起作用,因为我需要索引它并且Realm不支持外键索引

1 个答案:

答案 0 :(得分:2)

如果您按照我的guide for Realm schema design in case of uni-directional links进行操作,则执行

public class Transaction extends RealmObject:
    public Category category;

    @Index
    public long categoryId;
    ... other fields

public class Category extends RealmObject {
    @PrimaryKey
    public long id;

    ...

然后你可以做

RealmResults<Transaction> transactions = 
        realm.where(Transaction.class).distinct("categoryId");