GROUP BY与SUM()使用核心数据

我遇到了类似的问题,但没有一个有完整的例子来说明如何完成它。

我试图翻译的SQL查询是这样的:

SELECT date, SUM(amount) FROM Table GROUP BY date; 

我需要帮助debugging下面的代码(目前fetchRequest返回nil):

 entity = [NSEntityDescription entityForName:@"Table" inManagedObjectContext:self.managedObjectContext]; [fetchRequest setEntity:entity]; NSExpressionDescription* ex = [[NSExpressionDescription alloc] init]; [ex setExpression:[NSExpression expressionWithFormat:@"@sum.amount"]]; [ex setExpressionResultType:NSDecimalAttributeType]; [fetchRequest setPropertiesToFetch:[NSArray arrayWithObjects:@"date", ex, nil]]; [fetchRequest setPropertiesToGroupBy:[NSArray arrayWithObject:@"date"]]; [fetchRequest setResultType:NSDictionaryResultType ]; [self.managedObjectContext executeFetchRequest:fetchRequest error:&error]; 

这是错误的:

 2012-09-28 13:58:46.319 App[12205:c07] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSArrayM insertObject:atIndex:]: object cannot be nil' 

上面的代码需要

 [ex setName:@"somename"]; 

在执行fetchRequest之前。