我在核心数据中嵌套了多对多关系:A -> B -> C,其中A有B的多个对象,B有C的多个对象。
现在,我正在尝试获取所有与C没有相关对象的对象A,而不管它们之间有多少个B的对象。
我尝试了这个谓词:NSPredicate(format: "SUBQUERY(arrayOfB, $b, $b.arrayOfC.@count == 0).@count > 0")
但是它给了我这个错误:'NSInvalidArgumentException', reason: 'Keypath containing KVC aggregate where there shouldn't be one; failed to handle $b.arrayOfC.@count'
发布于 2021-02-22 20:01:40
尝试使用计数表达式的替代格式:
NSPredicate(format: "SUBQUERY(arrayOfB, $b, count:($b.arrayOfC) > 0).@count == 0")
请注意,我认为你的条件是错误的:你想要一个零计数(arrayOfB,其中arrayOfC有非零成员)。
https://stackoverflow.com/questions/66318783
复制