gpt4 book ai didi

objective-c - 任何一对多对多谓词

转载 作者:行者123 更新时间:2023-12-03 17:14:08 26 4
gpt4 key购买 nike

我可以获得像这样的谓词

ANY alpha.prop LIKE $SEARCH_TERM

alpha 是一对多关系的情况下工作,但我如何获得

ANY alpha.beta.prop LIKE $SEARCH_TERM

工作时,alpha 是一对多关系,beta 是一对多关系alpha,这会引发异常“此处不允许使用多个对多键”。

最佳答案

您可以分两步完成。我们假设 b 是从 AB 的一对多关系,而 c 是一对多关系从 BC 的对多关系,那么您可以首先获取与任何 C 相关的所有 B 对象> 具有所需属性的对象:

NSFetchRequest *request1 = [NSFetchRequest fetchRequestWithEntityName:@"B"];
NSPredicate *predicate1 = [NSPredicate predicateWithFormat:@"ANY(c.prop) LIKE %@", searchTerm];
request1.predicate = predicate1;
NSArray *bList = [context executeFetchRequest:request1 error:NULL];

然后从中间结果中获取与任何 B 对象相关的所有 A 对象:

NSFetchRequest *request2 = [NSFetchRequest fetchRequestWithEntityName:@"A"];
NSPredicate *predicate2 = [NSPredicate predicateWithFormat:@"ANY(b) IN %@", bList];
request2.predicate = predicate2;

NSArray *aList = [context executeFetchRequest:request2 error:NULL];

关于objective-c - 任何一对多对多谓词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11896171/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com