0

我已经设法将自己与 Core Data 谓词联系在一起——可能是因为我试图在脑海中将 SQL 转换为 Core Data 概念......

我有两个NSManagedObject类以一对多的关系连接:

Customer <---->> Agreements

Customer  has-many  Agreements

Agreement has-one Customer

该类Agreement有一个名为 的布尔属性paymentRequired

我想要做的是检索所有具有Customers属性设置为.AgreementpaymentRequiredtrue

在 SQL 术语中,我认为这可以通过子查询来完成:

select CUSTOMER.NAME from CUSTOMER where CUSTOMER.ID in (select distinct AGREEMENT.CUSTOMER from AGREEMENT where AGREEMENT.PAYMENTREQUIRED = 1)

Agreements从核心数据中检索带有标志集的 没有问题,但我正在努力获得不同的Customers.

谁能告诉我哪里出错了?

4

1 回答 1

1
[NSPredicate predicateWithFormat:@"ANY agreements.paymentRequired == 1"];

您可以在简短的Predicate Programming Guide中找到文档。在第一页(简介)上,您的问题有一个解决方案。我建议阅读它,以便最终设法从 SQL 习语中解脱出来。

于 2012-12-14T14:07:53.483 回答