ios - NSArray con NSPredicate usando NOT IN
objective-c (2)
¿Qué hay de usar NONE
?
[NSPredicate predicateWithFormat:@"NONE CategoryID IN %@", parentIDs];
Tengo un NSArray que quiero filtrar ciertos objetos usando un NSPredicate, esperaba poder usar NOT IN ya que pude ver que puedo hacer fácilmente un IN.
Entonces tengo mi matriz:
self.categoriesList
Luego obtengo los valores que deseo eliminar:
NSArray *parentIDs = [self.cateoriesList valueForKeyPath:@"@distinctUnionOfObjects.ParentCategoryID"];
Esto me da una lista de ParentCategoryID para las categorías que NO deseo mostrar, por lo que creo que puedo usar NSPredicate para eliminarlas:
self.cateoriesList = [self.cateoriesList filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"CategoryID NOT IN %@",parentIDs]];
Esto falla:
reason: ''Unable to parse the format string "CategoryID NOT IN %@"''
Si quisiera usar solo IN, eso funciona perfectamente, por supuesto.
¿Qué pasa con NOT (CategoryID IN %@)
?