NSPredicate 检索在 1:n 关系中属性不为 NIL 的所有对象
Posted
技术标签:
【中文标题】NSPredicate 检索在 1:n 关系中属性不为 NIL 的所有对象【英文标题】:NSPredicate to retrieve all objects whose attribute in an 1:n relationship is not NIL 【发布时间】:2012-04-19 18:27:23 【问题描述】:我想为 Core Data 查询 构建 NSPredicate,它应该检索所有 IBEstPeriod 托管对象,其 1:n 关系 estType.consHistory.consType NIL * .
不幸的是,我没有找到任何关于这样一个 NSPredicate 应该是什么样子的线索。您有什么想法或建议吗?
谢谢!
【问题讨论】:
【参考方案1】:对谓词中的多对关系使用“ANY”:
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
[fetchRequest setEntity:[NSEntityDescription entityForName:@"IBEstPeriod" inManagedObjectContext:context]];
[fetchRequest setPredicate:[NSPredicate predicateWithFormat:@"ANY estType.consHistory.consType != nil"]];
NSArray *fetchResult = [managedObjectContext executeFetchRequest:fetchRequest error:nil];
【讨论】:
以上是关于NSPredicate 检索在 1:n 关系中属性不为 NIL 的所有对象的主要内容,如果未能解决你的问题,请参考以下文章
NSPredicate:“添加”一对多关系CoreData中所有实体的属性值