Iphone 在哪里可以找到核心数据NSPredicate子查询功能的文档?
在哪里可以找到NSPredicate核心数据子查询功能的文档?好问题。。。这似乎没有很好的记录 以下是我的发现:Iphone 在哪里可以找到核心数据NSPredicate子查询功能的文档?,iphone,core-data,Iphone,Core Data,在哪里可以找到NSPredicate核心数据子查询功能的文档?好问题。。。这似乎没有很好的记录 以下是我的发现: 大多数文档可在上找到。它包含两个示例和语法:子查询(集合表达式、变量表达式、谓词) 简要介绍子查询表达式和NSSubqueryExpressionType,这是在谓词中指定子查询时使用的 找到文档的最合理的地方是,但它只是被提到了几次;在、和部分中 您可以尝试,但这只返回53个结果 更新: 随着应用程序扩展的增加,苹果已经包含了更多的子查询示例,因为它们是复杂匹配逻辑所必需的
- 大多数文档可在上找到。它包含两个示例和语法:
子查询(集合表达式、变量表达式、谓词)代码>
- 简要介绍子查询表达式和
,这是在谓词中指定NSSubqueryExpressionType
时使用的子查询
- 找到文档的最合理的地方是,但它只是被提到了几次;在、和部分中
- 您可以尝试,但这只返回53个结果
- 在的部分中,它现在包括一个如何匹配UTI的示例:
SUBQUERY ( extensionItems, $extensionItem, SUBQUERY ( $extensionItem.attachments, $attachment, ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "com.adobe.pdf" ).@count == $extensionItem.attachments.@count ).@count == 1
- 您可以在《应用程序扩展编程指南》>《应用程序扩展概要》中找到更复杂的示例:
- 除其他几个NSPredicate功能外,还有一个讨论子查询的
本质上,每个
子查询
相当于Swift中的过滤器
。而ANY
等同于contains
再举一个例子:
SUBQUERY (
extensionItems,
$extensionItem,
SUBQUERY (
$extensionItem.attachments,
$attachment,
ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "com.adobe.pdf"
).@count == $extensionItem.attachments.@count
).@count == 1
在Swift中类似于此:
extensionItems.filter {
$0.attachments.filter {
$0.registeredTypeIdentifiers.contains {
$0.utiConformsTo("com.adobe.pdf")
}
}.count == $0.attachments.count
}.count == 1
事实上,这项功能似乎完全没有文档记录。多可怜的人啊,看起来很酷。我只能猜测:他们担心人们会过度使用它,因为它看起来真的很重。或者没有足够的人向苹果公司提交雷达文件,让它变得足够重要。如果您想查看有关此功能的文档,请提交雷达文件。
extensionItems.filter {
$0.attachments.filter {
$0.registeredTypeIdentifiers.contains {
$0.utiConformsTo("com.adobe.pdf")
}
}.count == $0.attachments.count
}.count == 1