在 Realm 上循环查询 android
Looping a query on Realm for android
如何在领域数据库上循环查询?
我需要获取由我的 id 数组列表定义的所有项目..
我认为唯一的方法是实现我的查询循环..但我无法让它工作..这是我的示例代码..
for(Basket w : rResult){
somethingList = realm.where(SomeThing.class).equalTo("something_id", w.getId()).findAll();
}
我还尝试执行文档中描述的链式查询..
for(Basket w : rResult){
somethingList = somethingList.where().equalTo("something_id", w.getId()).findAll();
}
有人可以告诉我它是怎么做到的吗?提前致谢!
所以我整晚都在思考答案..简单的答案就是在执行 .findAll() 操作之前循环查询..
RealmResult<Something> somethingResult = realm.getInstance(context).where(Something.class).findAll();
RealmQuery<Basket> basketQuery = realm.where(Basket.class);
for(int i=0; i<somethingResult.size(); i++){
if(i==0)
basketQuery.equalTo("something_id", somethingResult.get(i).getId());
else
basketQuery.or().equalTo("something_id", somethingResult.get(i).getId());
}
basketList = basketQuery.findAll();
希望这对其他人有帮助..
如何在领域数据库上循环查询?
我需要获取由我的 id 数组列表定义的所有项目.. 我认为唯一的方法是实现我的查询循环..但我无法让它工作..这是我的示例代码..
for(Basket w : rResult){
somethingList = realm.where(SomeThing.class).equalTo("something_id", w.getId()).findAll();
}
我还尝试执行文档中描述的链式查询..
for(Basket w : rResult){
somethingList = somethingList.where().equalTo("something_id", w.getId()).findAll();
}
有人可以告诉我它是怎么做到的吗?提前致谢!
所以我整晚都在思考答案..简单的答案就是在执行 .findAll() 操作之前循环查询..
RealmResult<Something> somethingResult = realm.getInstance(context).where(Something.class).findAll();
RealmQuery<Basket> basketQuery = realm.where(Basket.class);
for(int i=0; i<somethingResult.size(); i++){
if(i==0)
basketQuery.equalTo("something_id", somethingResult.get(i).getId());
else
basketQuery.or().equalTo("something_id", somethingResult.get(i).getId());
}
basketList = basketQuery.findAll();
希望这对其他人有帮助..