如何优化过滤包含List的对象?

时间:2017-06-27 08:55:00

标签: ios swift realm

我有一个很大的对象列表(例如汽车),其中包含一个带有子对象的列表(例如部件)。现在我想搜索所有部分,如果属性等于某事。例如,要获得所有车辆的车辆标题包含"座位"。

我在filter

上使用NSPredicate(format: "ANY part.title CONTAINS[c] '\(searchTerm)")Results<Car>

我如何选择索引来优化查询?我最终可以拥有大约10万Car个,每个大约10-20个部分在iPhone上。 Car是否需要&#34; parts.title&#34;?的索引?或者&#34;标题&#34;?或其他什么?

1 个答案:

答案 0 :(得分:0)

通常,必须在属性所属的类型上声明索引。在您的示例中,这意味着Part类应声明title应编入索引。但请注意,Realm目前不使用索引进行“包含”搜索。它们用于简单的相等比较(==)。