我已经成功地将自己与核心数据谓词捆绑在一起-可能是因为我试图在脑海中将SQL转换为核心数据概念……
我有两个NSManagedObject类,它们以一对多的关系连接在一起:
Customer <---->> Agreements
Customer has-many Agreements
Agreement has-one CustomerAgreement类有一个名为paymentRequired的布尔属性。
我要做的是检索Agreement的paymentRequired属性设置为true的所有Customers。
在SQL术语中,我认为这可以用子查询来完成:
select CUSTOMER.NAME from CUSTOMER where CUSTOMER.ID in (select distinct AGREEMENT.CUSTOMER from AGREEMENT where AGREEMENT.PAYMENTREQUIRED = 1)
从核心数据中检索设置了标志的Agreements没有问题,但我很难获得不同的Customers。
有没有人能告诉我哪里出错了?
发布于 2012-12-14 22:07:53
[NSPredicate predicateWithFormat:@"ANY agreements.paymentRequired == 1"];您可以在简短的Predicate Programming Guide中找到文档。在第一页(介绍)上有你的问题的解决方案。我建议阅读它,以便最终在精神上将自己与SQL成语分离开来。
https://stackoverflow.com/questions/13880137
复制相似问题