2017-10-29 1 views
0

Ich möchte alle Werte eines bestimmten Attributs nach einem Abruf von Core-Daten addieren. Gibt es eine Verknüpfung wie z. B. die Summe, die das schnell zurückgibt?10 IOS/Objective C/Core Data: Summiere alle Werte für ein Attribut aus der Abfrage

Hier ist mein Standardcode für einen Abruf. Suche nach etwas, das die Werte von orderprice insgesamt würde die Summe aller Aufträge bekommen

- (id) getSalesTotal{ 
    NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"Orders"]; 
    fetchRequest.resultType = NSDictionaryResultType; 

    NSError *error  = nil; 
    self.managedObjectContext = [IDModel sharedInstance].managedObjectContext; 

    NSArray *results = [self.managedObjectContext executeFetchRequest:fetchRequest 
                    error:&error]; 
    NSLog(@"error is %@",error); 
    // NSLog(@"context%@",results); 
    NSLog(@"beforevalueforkey%@",results); 
    NSMutableArray * ordertotal = [[results valueForKey:@"orderprice"] mutableCopy]; 
    return ordertotal;//Is there something like sum(ordertotal)????? 
} 

Antwort

1

Sie Schlüssel-Wert-Codierung verwenden:

NSNumber *orderTotal = [arrayWhoseSumIsToBeCalculated valueForKeyPath:@"@sum.self"]; 
Verwandte Themen