Ios 对不同实体进行预测
我想对不同的实体进行NSPredicate。这是我的核心数据库 简单地说,这是我应该做的查询Ios 对不同实体进行预测,ios,objective-c,core-data,nspredicate,nsfetchedresultscontroller,Ios,Objective C,Core Data,Nspredicate,Nsfetchedresultscontroller,我想对不同的实体进行NSPredicate。这是我的核心数据库 简单地说,这是我应该做的查询 Select c.c_name From Company c, Person p Where c.c_id = p.cu_company_id 现在我想知道如果我想得到上面查询的结果,谓词应该是什么样子 假设c_id和cu_company_id是整数,您可以尝试 NSFetchRequest *fr = [[NSFetchRequest alloc] initWithEntityName:@
Select c.c_name From Company c, Person p Where c.c_id = p.cu_company_id
现在我想知道如果我想得到上面查询的结果,谓词应该是什么样子 假设c_id和cu_company_id是整数,您可以尝试
NSFetchRequest *fr = [[NSFetchRequest alloc] initWithEntityName:@"Person"];
NSError *error;
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"cu_company_id == data.company.c_id"];
[fr setPredicate:predicate];
NSArray *persons = [self.managedObjectContext executeFetchRequest:fr error:&error];
一旦你有了persons数组,你就可以循环遍历它并得到这个人的名字。以另一种方式得到它
NSFetchRequest *fr = [[NSFetchRequest alloc] initWithEntityName:@"Company"];
NSError *error;
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"c_id == data.person.cu_company_id"];
[fr setPredicate:predicate];
NSArray *companies = [self.managedObjectContext executeFetchRequest:fr error:&error];
一旦你有了公司数组,你就可以循环遍历它并得到公司的名称。假设c_id和cu_company_id是整数,你可以试试
NSFetchRequest *fr = [[NSFetchRequest alloc] initWithEntityName:@"Person"];
NSError *error;
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"cu_company_id == data.company.c_id"];
[fr setPredicate:predicate];
NSArray *persons = [self.managedObjectContext executeFetchRequest:fr error:&error];
一旦你有了persons数组,你就可以循环遍历它并得到这个人的名字。以另一种方式得到它
NSFetchRequest *fr = [[NSFetchRequest alloc] initWithEntityName:@"Company"];
NSError *error;
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"c_id == data.person.cu_company_id"];
[fr setPredicate:predicate];
NSArray *companies = [self.managedObjectContext executeFetchRequest:fr error:&error];
一旦你有了公司数组,你就可以循环遍历它并得到公司的名字。对不起,我需要的是公司的名字而不是人名。反过来说,这是一样的。很容易只考虑对象,而不是表、行和列。我编辑了答案。好吧,但是如果我需要一个person对象,并且不想从这个person对象中得到公司id,而是公司名称,该怎么办。我需要两个单独的取回请求吗?对不起,我需要的是公司的名字而不是人的名字。这是一样的,反过来说。很容易只考虑对象,而不是表、行和列。我编辑了答案。好吧,但是如果我需要一个person对象,并且不想从这个person对象中得到公司id,而是公司名称,该怎么办。我应该发出两个单独的提取请求吗?