Я использую следующие выборки запроса, чтобы удалить основные данные объекты:Количество основных объектов данных с определенным значением атрибута
NSEntityDescription *entity=[NSEntityDescription entityForName:@"entityName" inManagedObjectContext:context];
NSFetchRequest *fetch=[[NSFetchRequest alloc] init];
[fetch setEntity:entity];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(value1 == %@) AND (value2 == %@)", data1, data2];
[fetch setPredicate:predicate];
//... add sorts if you want them
NSError *fetchError;
NSArray *fetchedData=[self.moc executeFetchRequest:fetch error:&fetchError];
for (NSManagedObject *product in fetchedProducts) {
[context deleteObject:product];
}
Что мне нужно будет выполнить выборки запроса только, если количество объектов в ядре объект данных с [value1 isEqualToString: @"borrar"]
больше 1. Как я могу добавить это условие?
*** EDIT Атрибут value1
является переходным атрибутом.
Является ли «borrar» одним из значений 'data1' или' data2', которые уже используются в предикате? –
Да, это одно из значений, но если countForFetchRequest подсчитывает количество объектов, я мог бы изменить предикат и рассмотреть только data2. – mvasco
Итак, вы хотите удалить все объекты со значением1 == "borrar" и значением == "someOtherString", но * только *, если есть хотя бы два объекта со значением1 == "borrar"? –