ios - CoreData 获取请求 - 获取所有有关系的对象

标签 ios core-data nspredicate nsfetchrequest

我有 3 个实体:

Topic <--->> subTopic <--->> Certificate.

我想要的是所有主题的列表,其中存在证书(没有重复项)。根据我最初的阅读(主要是这个问题:CoreData performance: predicate on more to-many relationships),我发现最有效的方法(假设可能)是从证书级别开始,并导出主题列表和证书列表。

但这就是我所得到的。当我想要返回主题列表时,如何指定我想要的列表将基于所有证书?是否可以为 fetchrequest 指定一个可以返回主题列表的谓词。

是否有一种方法可以做到这一点,而无需手动跟踪每个证书的关系并将找到的主题添加到 NSSet 或其他内容中?

感谢您的任何指点(或者同样 - 建议告诉我不要再犯傻了,这就是我应该这样做的方式!)

最佳答案

我目前无法对此进行测试,但使用此谓词对主题实体进行提取请求应该可以工作:

[NSPredicate predicateWithFormat:@"SUBQUERY(subtopics, $s, ANY $s.certificates != NULL).@count > 0"]

关于ios - CoreData 获取请求 - 获取所有有关系的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17028621/

相关文章:

ios - UIStackView:将 subview 推到边缘 ("Unlimited"间距)

ios - 将文本字幕添加到视频轨道(在 Swift 中)失败,错误代码为 -11841

ios - 在 iOS 中通过 XMPP MessageArchiving 保存 XMPP 多用户聊天消息

ios - 核心数据 : How to check if value is compatible with attribute?

objective-c - NSManagedObjectContext 具有不同的进程

iPhone操作系统: Fetching a random entity instance using NSPredicate Nsfetchrequest and core data

ios - NSXMLParser 读取 xml 文件时出现重复数据

ios - 在 UIView 外部添加边框(而不是在内部)

iphone - 检测 NSString 中的电话号码

ios - NSPredicate 对对象数组中的对象应用谓词。