核心数据与一个关系 - 是外国参考索引?

时间:2011-10-29 16:09:21

标签: iphone ios core-data

我想将过滤器应用于属于列表中一组父对象的子对象。

以示例Person和PersonInterest为例。关系人< - >> PersonInterest。 PersonInterest只有一个属性映射到枚举值(小数字)。

我有一个庞大的商店数据库,并亲自挑选了一些Person对象并将其ObjectID放在一个数组中。现在我想过滤那些具有标识为1的特定兴趣的人。

谓词可能是 1)获取PersonInterest

@"(person IN %@) AND (interestType == 1)",personObjectIDList

2)或获取人

@"(self IN %@) AND (ANY personInterests.interestType == 1)",personObjectIDList

鉴于每个人平均有5个兴趣,这两个查询都有效吗?

我以后可能希望匹配多个兴趣所以查询2是我的首选,例如:

@"(self IN %@) AND (ANY personInterests.interestType IN (1,2))",personObjectIDList //this may not work due to predicate restrictions for to-many

.....以及这些与存储一个JSON兴趣类型列表的人的属性相比如何与我填充第一个和最后一个元素0(例如'[0,1,4,3,0]'):

@"(self IN %@) AND (jsonInterestType like '*,1,*')",personObjectIDList

0 个答案:

没有答案