2016-02-03 5 views
3

В бизнес-логике я должен использовать логическую операцию AND в моем запросе в области, но после большого поиска я до сих пор не нашел ссылки на нее В iOS realm предоставил nspredicate, но есть ни для андроид , сейчас я не буду в состоянии сделать только логическую операцию ИЛИЛогическая операция AND в Realm android

Realm realm = Realm.getInstance(ApplicationCotroller.getRealmConfig(getContext(), Constants.SCHEMA_LIVE)); 
    RealmResults<DummyClass> realmResults = realm.where(DummyClass.class) 
    .contains("fieldName", value,Case.INSENSITIVE).or().contains("fieldName2", value,Case.INSENSITIVE).findAll(); 

ответ

9

И автоматически подразумеваются в API Android запросов. Вы можете прочитать об этом здесь: https://realm.io/docs/java/latest/#logical-operators

Но это

realm.where(Foo.class).equalTo("name", "foo").equalTo("name", "bar"); 

на самом деле означает:

realm.where(Foo.class).equalTo("name", "foo").and().equalTo("name", "bar"); 
+0

у нас есть что-нибудь в области для андроид как NSPredicate в прошивкой –

+0

Нет, Android (и Realm) не имеет текстового языка запросов, такого как NSPredicate. – geisshirt

+0

И для «ИЛИ» вы можете использовать «.or()», правильно? – Amt87

Смежные вопросы