cacao iphone core-dati predicato uno-a-molti fetchrequest
-
20-09-2019 - |
Domanda
Ho una serie di dati in cui uno degli attributi (firmware) è una relazione uno-a-molti.
Se voglio ottenere tutti i record in cui l'ID del firmware è 1 posso creare un predicato utilizzando
@"(ANY Firmware.FID==1)"
Poi ho un altro insieme di condizioni che affinerà il set ancora più utilizzando
(TopLevel==YES) AND (Parent>0)
Come posso combinarle o impostarlo in modo che il primo filtra il firmware allora filtra la seconda condizione? In definitiva Voglio che tutti i record in cui Firmware.FID = 1 e TopLevel == YES e Parent> 0.
Grazie, Howie
Soluzione
Si dovrebbe essere in grado di utilizzare questo predicato:
[NSPredicate predicateWithFormat:@"TopLevel == %@ AND Parent > %@ AND ANY Firmware.FID == %@",[NSNumber numberWithBool:YES],[NSNumber numberWithInteger:0],[NSNumber numberWithInteger:1]];
ho spostato la condizione su "ANY Firmware.FID" ultima perché è la più complessa e può essere evitato se una delle altre condizioni è già fallito.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow