我有一个名为deal的实体,而deal有一个名为date的属性,这是此交易对象插入商店的时间。

一天可能有几个deal

所以我想按天计算一些数据组,我想获取daycountofsomething喜欢:

2013-06-03 3
2013-06-02 4

而且我也不想使用sectionPath,因为它只会将交易划分为多个部分。

我知道我可以通过拥有另一个属性(type:string)来完成此任务,例如dayOfTheDate,就像每个对象中的2013-06-03一样。

顺便说一句,在这种情况下,暂时性属性似乎不起作用

你能明白我在找什么吗?

在这里发表评论,以便我提供更多详细信息

谢谢大家。

最佳答案

数相同音符时如何做的示例

NSEntityDescription* entity = [NSEntityDescription entityForName:@"Assets"
                                          inManagedObjectContext:[appDelegate managedObjectContext]];
NSAttributeDescription* statusDesc = [entity.attributesByName objectForKey:@"notes"];
NSExpression *keyPathExpression = [NSExpression expressionForKeyPath: @"assetUrl"]; // Does not really matter
NSExpression *countExpression = [NSExpression expressionForFunction: @"count:"
                                                          arguments: [NSArray arrayWithObject:keyPathExpression]];
NSExpressionDescription *expressionDescription = [[NSExpressionDescription alloc] init];
[expressionDescription setName: @"count"];
[expressionDescription setExpression: countExpression];
[expressionDescription setExpressionResultType: NSInteger32AttributeType];
[searchFetchRequest setPropertiesToFetch:[NSArray arrayWithObjects:statusDesc,expressionDescription, nil]];
[searchFetchRequest setPropertiesToGroupBy:[NSArray arrayWithObject:statusDesc]];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"timestamp" ascending:NO];
[searchFetchRequest setSortDescriptors:@[sortDescriptor]];
[searchFetchRequest setFetchLimit:10];
NSPredicate *query = [NSPredicate predicateWithFormat:@"notes contains[cd] %@",_txtCameraNote.text];
[searchFetchRequest setPredicate:query];
[searchFetchRequest setResultType:NSDictionaryResultType];
NSArray *fetchedObjects = [appContext executeFetchRequest:searchFetchRequest error:nil];
fetchedObjects将是这样的。
({
    count = 1;
    notes = "glenny and me";
},
{
    count = 6;
    notes = macair;
})

关于ios - 如何按日分组核心数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16896182/

10-10 20:34