NSPredicate一对多的关系

时间:2012-09-01 21:27:02

标签: iphone ios core-data nspredicate

  • 假设部门实体和具有一对多关系的员工实体
  • 假设部门名为员工,员工部门
  • 假设员工具有名称
  • 属性

我需要获取所有没有名为“Bob”的员工的部门

根据我读过的关于SO的其他答案,我试过这个:

name = @"Bob";
predicate = [NSPredicate predicateWithFormat:@"ALL employees.name != %@", name];

但它似乎不起作用。有任何想法吗?

感谢。

1 个答案:

答案 0 :(得分:5)

这里不需要子查询:

name = @"Bob";
predicate = [NSPredicate predicateWithFormat:@"NOT ANY employees.name == %@", name];

出于某种原因,“ALL”聚合不适用于多种关系,但“ANY”聚合可以正常工作。