使用 ANY 和 AND 过滤领域结果

Filter realm results with ANY and AND

我有这个 NSPredicate:

results?.filter("ANY childs.property = 'prop1' AND ANY childs.key contains[c] %@", "key1")

上面的代码 return 都是 objects 具有 child 的 属性 'prop1' 或 child 的键 'key1'

我需要的是 return 只有具有 child 的 objects 以及 属性 'prop1' 和键 'key1'

详细说明

我有 objects 个 Person

每个 Person 都有一个 childs 属性 这是 Kid

的列表

每个Kid有两个字符串属性propkey

上面的谓词 return 是两个人,而我需要的是 return 只有第一人称,因为只有第一人称 child 和 prop1key1

非常感谢帮助

为了确保同一个对象满足这两个条件,您需要使用子查询:

results?.filter("SUBQUERY(childs, $child, $child.property = 'prop1' AND $child.key contains[c] %@).@count > 0", "key1")