不知道你是否有我的问题,所以这是一个例子。
我有一个包含50个产品ID的数组,我想检查Core Data中是否存在所有ID。如果没有循环并发出50个请求,我该怎么做?必须有一种比我想象的更有效的方式。
在我的模型中,我有一个只有Name和Id属性的实体Product。
答案 0 :(得分:2)
你可以使用......
[fetchRequest setPredicate:[NSPredicate predicateWithFormat: @"productid IN[c] %@", ids]];
其中id是NSStrings的数组,fetchRequest是你在具有productid属性的实体上的NSFetchRequest。
您也可以为其他对象类型和关系执行此操作。
即
NSArray *requiredChildren = //some array of coredata objects
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"child IN %@", requiredChildren];