是否可以做" IN"在Android中查询Realm?我的意思是,相当于" SELECT X FROM X WHERE x IN(...)?
非常感谢你!
答案 0 :(得分:3)
官方IN
运营商(自1.2.0起)的工作方式如下:
public RealmQuery<E> in(String fieldName, String[] values) {
if (values == null || values.length == 0) {
throw new IllegalArgumentException(EMPTY_VALUES);
}
beginGroup().equalTo(fieldName, values[0]);
for (int i = 1; i < values.length; i++) {
or().equalTo(fieldName, values[i]);
}
return endGroup();
}
答案 1 :(得分:0)
在Java中:
RealmResults dogs = realm
.where(Dog.class)
.in("name", new String[] {"Larry","Curly","Moe"})
.findAll();
在kotlin中(请注意in
是关键字,因此,请检查语法更改):
val dogs = realm
.where<Dog>()
.`in`("name", arrayOf("Larry", "Curly", "Moe"))
或
val dogs = realm
.where<Dog>()
.anyOf("age", arrayOf("Larry", "Curly", "Moe"))