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

È stato utile?

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
scroll top