Запрос на основе RealmList как переменной-члена

#android #realm

#Android #область

Вопрос:

Как мы можем запросить базу данных Realm на основе RealmList в качестве переменной-члена?

Позвольте мне дополнительно уточнить вариант использования.

У меня есть следующий класс:

 public class Match extends RealmObject {

    @PrimaryKey
    @Expose
    private String matchid;

    @Expose
    private RealmList<Team> Team = new RealmList<>();
}
  

И объект Team выглядит следующим образом:

 public class Team extends RealmObject {

    @PrimaryKey
    @Expose
    private String teamid;
}
  

Я хочу запросить все объекты соответствия, в которых teamid , например, 1.

Возможно ли это? Как мы можем написать такой запрос в Realm?

Комментарии:

1. Вы читали документацию? Примеры, кажется, ясно показывают realm.where(Team.class).equalTo("teamid", 1)

2. Для получения более подробной информации, realm.io/docs/java/latest/#queries

3. Но это будет запрашивать все объекты Team.

4. О, я понимаю, о чем вы спрашиваете. Я не думаю, что вы можете запросить объекты соответствия, где значение teamId равно 1. Вам нужно будет либо вместо этого иметь объект Match, который содержит только команду 1, либо иметь в команде ссылку на совпадения, которым она соответствует

Ответ №1:

 RealmResults<Match> results = realm.where(Match.class)
                                   .equalTo("Team.teamid", 1).findAll();
  

Дополнительная информация о запросах ссылок: https://realm.io/docs/java/latest/#link-queries