我在我的问题应用程序中首次使用核心数据,我已经做了很多Google,但我没有找到特定的解决方案。
我有 entity :sub category
属性:mainCategoryId,subCategoryName。
现在我想获取
之类的数据Select subCategoryName from SubCategory where mainCategoryId=1;
我实施的代码如下:
NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"SubCategory" inManagedObjectContext:managedObjectContext];
[request setEntity:entity];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SubCategoryName == %@",@"Triangular1"];
[request setPredicate:predicate];
NSError *error;
arrSubCategory = [managedObjectContext executeFetchRequest:request error:&error];
如何在Coredata中获取类似的数据
分享您的想法
thanx提前。
从您的问题中,您需要什么,
[NSPredicate predicateWithFormat:@"mainCategoryId = %@",@"1"];
,您的代码看起来像
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription
entityForName:@"SubCategory" inManagedObjectContext:context];
[fetchRequest setEntity:entity];
NSPredicate *predicate =[NSPredicate predicateWithFormat:@"mainCategoryId = %@",@"1"];
[request setPredicate:predicate];
NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:&error];
for (NSManagedObject *info in fetchedObjects) {
NSLog(@"subCategoryName: %@", [info valueForKey:@"subCategoryName"]);
}
以上只是示例代码。根据您的要求,实际实施可能会有所不同。
关于Coredata的教程在这里。也检查一下。
您可以像这样做
NSString *maincategoryId = @"1";
NSManagedObjectContext *managedObjectContext = [self managedObjectContext];
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] initWithEntityName:@"SubCategory"];
[fetchRequest setPredicate:[NSPredicate predicateWithFormat:@"rubriqueid == %@", maincategoryId]];
,在您致电nsmutablearray以下结果之后:
NSMutableArray *answensmuarray = [[managedObjectContext executeFetchRequest:fetchRequest error:nil] mutableCopy];