我有一个包含三个实体的数据模型设置,类(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/