我有一個Core Data實體,其中有一個名爲'value'的屬性,它經常重複。我希望只檢索唯一值(完成)以及每個值的出現頻率,以便我可以根據該屬性進行排序(我正在基於現有的用戶輸入構建自動完成功能,因此知道某個輸入出現的頻率是多少必要)。核心數據中的不同項目
我的讀取請求目前看起來是這樣的:
NSFetchRequest *fetchRequest = [[[NSFetchRequest alloc] init] autorelease];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Item" inManagedObjectContext:self.managedObjectContext];
NSDictionary *entityProperties = [entity propertiesByName];
[fetchRequest setEntity:entity];
[fetchRequest setFetchBatchSize:10];
[fetchRequest setFetchLimit:20];
[fetchRequest setReturnsDistinctResults:YES];
[fetchRequest setResultType:NSDictionaryResultType];
[fetchRequest setPropertiesToFetch:[NSArray arrayWithObject:[entityProperties objectForKey:@"value"]]];
NSSortDescriptor *sortDescriptor = [[[NSSortDescriptor alloc] initWithKey:@"value" ascending:YES] autorelease];
NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor];
[fetchRequest setSortDescriptors:sortDescriptors];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"value BEGINSWITH[c] %@",predicateString];
[fetchRequest setPredicate:predicate];
return fetchRequest;
我有點堅持這一點。有任何想法嗎?
在此先感謝!
您是否看到此答案? http://stackoverflow.com/questions/2785844/how-to-fetch-distinct-values-in-core-data – D33pN16h7
是的,這讓我有不同的價值觀,但我需要計算它們中每一個的存在數量。 – NathanGaskin