核心数据检索详细信息

时间:2012-03-24 00:14:30

标签: ios core-data entity-relationship

Core Data

您好,我正在尝试从数据库中获取详细信息,我创建了一个简单的数据库,并在表视图中显示Grocery属性fruit,例如: 苹果 葡萄 草莓 瓜 ... 如果我点击苹果行例如,我想检索该对象的详细信息:所以我想只看到为fruitID分组的fruitName,例如有很多苹果水果类型,每种类型都有一个id。 ..所以我只想看到一个ID的苹果类型,我希望我能很好地解释这个问题。

我发现只有这种方法:

- (NSArray *)sortFruit {
NSSortDescriptor *sortLastNameDescriptor = [[NSSortDescriptor alloc] initWithKey:@"fruitID" ascending:YES];
NSArray *sortDescriptors = [NSArray arrayWithObjects:sortLastNameDescriptor, nil];
return [[[fruit valueForKey:@"detailes"] allObjects] sortedArrayUsingDescriptors:sortDescriptors];
}

但是通过这种方式,我只能获取该水果的所有细节,并按fruitID排序,但我无法选择一个值......所以我只能看到一个特定的fruitID组......

编辑:非常感谢您的回答,现在就这样:

NSPredicate *predicate = [NSPredicate
                          predicateWithFormat:@"%K == %@",
                          @"fruitID", [NSNumber numberWithInt:0]];
NSArray *arrayfiletered = [[self sortEpisode] filteredArrayUsingPredicate:predicate];

我可以检索特定fruitID的信息,但有一种方法可以查看该水果有多少种不同的水果ID?

1 个答案:

答案 0 :(得分:0)

您想要的答案是在NSPredicate类中。具体请参见NSArray类中的函数filteredArrayWithPredicate:。它将根据您传入的谓词返回一个新数组。This是一篇关于如何使用谓词的文章。