cacao iphone predicado núcleo-datos uno-a-muchos fetchrequest
-
20-09-2019 - |
Pregunta
Tengo un conjunto de datos en el que uno de los atributos (firmware) es una relación de uno a muchos.
Si quiero obtener todos los registros donde el identificador de firmware es 1 puedo crear un predicado utilizando
@"(ANY Firmware.FID==1)"
Luego tengo otro conjunto de condiciones que perfeccionar el conjunto aún más utilizando
(TopLevel==YES) AND (Parent>0)
¿Cómo puedo combinar o configurarlo de manera que primero se filtra el firmware a continuación, se filtra la segunda condición? En última instancia Quiero que todos los registros en los que Firmware.FID = 1 y TopLevel == SI y Padres> 0.
Gracias, Howie
Solución
Usted debe ser capaz de usar este predicado:
[NSPredicate predicateWithFormat:@"TopLevel == %@ AND Parent > %@ AND ANY Firmware.FID == %@",[NSNumber numberWithBool:YES],[NSNumber numberWithInteger:0],[NSNumber numberWithInteger:1]];
Me moví la condición de "CUALQUIER Firmware.FID" última ya que es el más complejo y se puede evitar si una de las otras condiciones ya ha fracasado.