gpt4 book ai didi

ios - NSPredicate 在多对多关系上计数 > 0

转载 作者:行者123 更新时间:2023-11-29 01:07:43 25 4
gpt4 key购买 nike

我在 CoreData 中有一个三级对象层次结构:假设实体A 有一组实体B,实体B 有一组实体C。 (A多对多B和B多对多C)

我想获取所有实体 A,使得 A 具有 B 和 C。我在获取实体 A 时尝试使用谓词:NSPredicate(format: "ANY bs.cs.@count > 0")' 但我收到此错误:Unsupported function expression count : (bs.cs)

关于如何正确编写此查询的任何想法?

最佳答案

“ANY”运算符不适用于嵌套对多关系,因此你需要一个“SUBQUERY”(不幸的是这不是很好记录)。像这样的东西应该有效:

NSPredicate(format:"SUBQUERY(bs, $b, $b.cs.@count != 0).@count != 0")

SUBQUERY(..) 部分返回所有至少具有一个相关 C 对象的相关 B 对象。最后的 .@count != 0 部分检查是否存在至少一个具有此属性的相关 B 对象。

关于ios - NSPredicate 在多对多关系上计数 > 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36148075/

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