У меня следующий код для выборки и группировки результатов поиска:Может ли NSFetchRequest propertiesToGroupBy быть нечувствительным к регистру?
NSFetchRequest *request = [[NSFetchRequest alloc] initWithEntityName:@"Song"];
[request setPredicate:[NSCompoundPredicate andPredicateWithSubpredicates:predicates]];
[request setResultType:NSDictionaryResultType];
[request setSortDescriptors: @[[NSSortDescriptor sortDescriptorWithKey:@"timestamp" ascending:YES]]];
NSExpression *countExpression = [NSExpression expressionWithFormat:@"count:(SELF)"];
NSExpressionDescription *expressionDescriprion = [[NSExpressionDescription alloc] init];
[expressionDescriprion setName:@"count"];
[expressionDescriprion setExpression:countExpression];
[expressionDescriprion setExpressionResultType:NSInteger64AttributeType];
NSArray *properties = @[@"artistName", @"songName"];
[request setPropertiesToFetch:[properties arrayByAddingObject:expressionDescriprion]];
[request setPropertiesToGroupBy:properties];
self.fetchedItems = [self.managedObjectContext executeFetchRequest:request error:nil];
, который работает очень хорошо, но я столкнулся выдавать и вид stucked с, так мне нужно сделать это propertiesToGroupBy (тип свойство NSString *) случай нечувствительный как-то. На данный момент я следующий вывод:
<_PFArray 0x7fa3e3ed0d90>(
{
artistName = "System of a Down";
count = 44;
songName = "Lonely Day";
},
{
artistName = "System Of A Down";
count = 2;
songName = "Lonely Day";
},
{
artistName = "System of a Down";
count = 4;
songName = "Chop Suey";
}
)
, который является некорректным, так что мне нужно первые 2 пунктов, чтобы быть в одной секции, причиной этого является тот же художник.
Есть ли способ достичь этого?
Это кажется невозможным для группы по NSExpressionDescription для меня. После [запроса setPropertiesToGroupBy: myExpressions]; У меня всегда есть «NSInvalidArgumentException», причина: «Недопустимое выражение для ключевого слова – iiFreeman