我正在使用下面的代码使用与搜索条件匹配的 CoreData 获取一组查询的所有行:itemType = 1。但我需要做的是从数据中获取特定数量的随机行。例如,我不需要检索列名 dataType = 1 的所有 100 行数据,而是需要随机获取 dataType = 1 的 25 行。我希望有一个相对轻松的解决方案。任何帮助表示赞赏。lq
NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:[NSEntityDescription entityForName:@"MyAppName"
inManagedObjectContext:[self managedObjectContext]]];
NSError *error = nil;
NSPredicate *predicate;
NSArray *fetchResults;
predicate = [NSPredicate predicateWithFormat:@"(itemType = %i)", 1];
[request setPredicate:predicate];
fetchResults = [managedObjectContext executeFetchRequest:request error:&error];
if (!fetchResults) {
// NSLog(@"no fetch results error %@", error);
}
self.mutableArrayName = [NSMutableArray arrayWithArray:fetchResults];
[request release];