Wenn ich Sie richtig verstanden habe, möchten Sie 10 neueste Dokumente von einem bestimmten Kunden erhalten? Das ist einfach.
NSFetchRequest *request = [[NSFetchRequest alloc] init];
request.entity = [NSEntityDescription entityForName:@"Document" inManagedObjectContext:managedObjectContext];//Specify the entity Name
request.predicate = [NSPredicate predicateWithFormat:@"customerID = %@",customerID];//Specify the ID you need
request.sortDescriptors = [NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"updatedDate" ascending:YES]];//Sorted by most recent ones
request.fetchLimit = 10;//You'll get ten latest Documents
NSError *error = nil;
latestDocuments = [managedObjectContext executeFetchRequest:request error:&error];
EDIT
Wie wir herausgefunden haben, dass die Aufgabe zehn letzten Dokumente zu bekommen, aber nur eine pro Kunde, sehe ich wirklich keine Möglichkeit, diese irgendwie effizient zu tun (ich meine, ohne IN Abfrage, die customerIDs enthalten, die Sie bereits abgerufen haben), aber juat, um Ihrem Kunden ein neues One-to-One-Verhältnis hinzuzufügen - nextDocument, und eine Umkehrung dazu, und nur Anfrage an die Dokumente, in denen isLatestToCustomer ist nicht Null.
Entschuldigung, nicht für einen bestimmten Kunden. Holen Sie sich die 10 neuesten Dokumente, aber nur die Dokumente mit einer eindeutigen customerID. 'code' CustomerID = 1, gespeichert ein Dokument vor 2 Tagen customerID = 1, einen Tag ein Dokument gespeichert vor customerID = 2, sparte ein Dokument vor einem Tag customerID = 3, sparte ein Dokument heute ich mag Holen Sie sich die jüngste Aktivität von Dokumenten, aber nur die neuesten der einzigartigen Kunden. So wird es holen customerID = 1, Dokument gespeichert vor einem Tag customerID = 2, Dokument gespeichert vor einem Tag customerID = 3, Dokument gespeichert heute – Bassem
Sie meinen, zehn neueste Dokumente, aber nur ein Dokument pro Kunde? –
Yep, das klingt viel einfacher :) – Bassem