Core data CoreData:查询时不使用任何

Core data CoreData:查询时不使用任何,core-data,nspredicate,nsfetchrequest,Core Data,Nspredicate,Nsfetchrequest,我有以下型号: 我需要获取所有的PT对象,其中hasStatus对象都不属于groupId=4。因此,PTStatus对象属性status.group.groupId均不为4 我尝试了几种方法,但它返回的PTs具有一些PTSTatus,其中groupId=4 例如: NSFetchRequest *request = [[NSFetchRequest alloc] init]; request.entity = [NSEntityDescription entityForName:@"PT" i

我有以下型号:

我需要获取所有的PT对象,其中hasStatus对象都不属于groupId=4。因此,PTStatus对象属性status.group.groupId均不为4

我尝试了几种方法,但它返回的PTs具有一些PTSTatus,其中groupId=4

例如:

NSFetchRequest *request = [[NSFetchRequest alloc] init];
request.entity = [NSEntityDescription entityForName:@"PT" inManagedObjectContext:context];
request.predicate = [NSPredicate predicateWithFormat:@"NONE hasStatus.status.group.groupId == %@",
                     [NSNumber numberWithInt:4]];

有什么帮助吗?

显示您尝试过的选项。其中一个是子查询吗?@Wain inserted example groupid是数字还是字符串?您可以尝试类似SUBQUERYhasStatus、$b、ANY$b的内容。status.group.groupid='4'。@count=0@Wain它在连接到FetchResultController时崩溃,并出现以下错误:ALL或ANY运算符的左侧必须是NSArray或NSSet.query:[NSPredicate predicateWithFormat:@SUBQUERYhasStatus,$b,ANY$b.status.group.groupId=%@@count==0,[NSNumber numberwhithint:4]];