不搜索一对多核心数据关系

时间:2012-07-02 23:16:52

标签: ios core-data nsfetchedresultscontroller nsfetchrequest

我有一对多关系,关系“人”,从我的主要实体到另一个实体,实体“人”,有人名单,归属“人”。我正在尝试使用fetchedResultsController搜索所有主要实体,其中特定“人”没有关系“人”。我尝试过使用这个谓词搜索字符串:

@"(NOT ('%@' IN[cd] people.person))", notPersonSearch

@"(NOT (ANY people.person == '%@'))", notPersonSearch

他们两种工作。如果只有一个“人”与主要实体有关系,那么该特定实体将从搜索结果中排除。但是,如果有多个“人”与主实体有关系,则即使排除的名称是“人”属性之一,实体也会包含在结果中。

首先是有更好的方法来编写这个谓词吗?如果没有,我可以再次搜索与notPersonSearch匹配的实体,并将它们与所有结果进行比较,并保留两个搜索不常见的结果吗?

1 个答案:

答案 0 :(得分:0)

我认为你正在寻找@"NONE people.person == %@", notPersonSearch

请参阅谓词编程指南中的Aggregate Operations