iphone - NSPredicate 查询父子

标签 iphone objective-c ios core-data nspredicate

我有一个包含三个实体的数据模型设置,类(class)、学生和考试成绩。

他们在太多这样的关系中联系在一起:

Course <---->> Student <---->> TestScores

所以一个类(class)会有几个学生,而这些学生又可以有多个测试分数(或者没有测试分数)

Course 实体有一个 Name 属性。 TestScores 是一个简单的实体,它只包含一个 testScore int 属性。

我希望能够获得一组至少有一个 textScore 为 100 的学生,并按类(class)名称排序。 NSPredicate 可以做到这一点吗?

最佳答案

我认为您可以将谓词设为

ANY testScores.score == 100

然后将它们放在一个获取请求中:

NSFetchRequest *req = [NSFetchRequest fetchRequestForEntityNamed:@"Student"];
req.predicate = [NSPredicate predicateWithFormat:@"ANY testScores.score == 100"];
req.sortDescriptors = [NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"course.name" ascending:YES]];

关于iphone - NSPredicate 查询父子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11844280/

相关文章:

java - Objective-C : Serializing/Archiving issues

ios - 我如何在从 github 下载的 xcode 中打开已经存在的项目?

ios - ValueForKeyPath 不起作用如何解决?

ios - 网络运行后获取小区计数

iphone - Xcode - 如何循环 UIAlert (带有文本字段)直到输入正确的值?

iphone - 这个 -> 符号是什么意思?

iphone - 对某些类使用类别,而不是对完整代码使用类别

c++ - 检测 CPU 子类型 iPhone

ios - 使用 iFunbox > 用户文件系统删除 iOS 13.3 上的空相册

iphone - ScrollView 中的多个 View 副本