Realm文档地址: https://realm.io/cn/docs/java/latest/#link-queries
Realm关联查询时不支持多个关联查询条件,或者说多个关联查询条件会进行分别查询,然后再对结果查找交集,而不是对条件进行集合然后查询结果。并且由于RealmJava库不像OC库和Swift库一样支持反向查询,所以想要实现文档描述中查找拥有一条名为fluffy且颜色为brown的狗的人的集合,最好的方法是使用主键,具体流程为:
1.给Dog类添加一个主键ID,因Realm不支持自增长主键,所以主键应在Dog类的无参构造函数中用UUID赋值;
2.查找所有名为fluffy且颜色为brown的狗;
3.对查找到的狗的列表进行遍历,依次取出狗的ID进行关联查询,获取到拥有这条狗的人的集合,然后将所有集合进行去重整合;
网友评论