【问题标题】:Get the number of records that match a CloudKit query获取与 CloudKit 查询匹配的记录数
【发布时间】:2015-04-19 22:13:18
【问题描述】:

在 iOS 上使用 CloudKit,是否可以确定特定查询匹配的记录数?

我实际上对阅读记录本身并不感兴趣,我只是想知道有多少记录被查询匹配。我知道匹配的记录是分批返回的,所以原则上我可以获取每批记录,并通过对每批中的数量求和来计算记录的总数。但是,此应用程序的匹配记录数量可能会很大,并且考虑到我对实际记录内容不感兴趣,这似乎效率低下且浪费。

提前致谢。

【问题讨论】:

    标签: ios icloud cloudkit


    【解决方案1】:

    CloudKit 中没有聚合函数。进行计数的唯一方法是获取所有记录。

    【讨论】:

    • 感谢您的回复,埃德温。
    • 这仍然相关还是有任何更新?我们不得不为了计数而获取数据有点奇怪。我总是将获取的数据量减少到像createdAt 这样的单个字段,然后我可以计算对象的数量。
    • 我发现请求非常大(比如 100 万)条记录将返回实际计数以及您不能一次请求超过 400 条记录的错误消息。所以你可以用一个你知道会失败的电话来伪造它。
    • 来自这篇帖子:stackoverflow.com/questions/24191999/cloudkit-count-recordsAlso,为了提高效率,您可以使用 CKQueryOperation 的 desiredKeys 属性来限制在搜索操作期间为每条记录检索的数据量。来源:desiredKeys CKQueryOperation.h 源文件中的注释状态如果设置为空数组,则声明不应下载任何用户字段。
    猜你喜欢
    • 1970-01-01
    • 2021-11-21
    • 1970-01-01
    • 1970-01-01
    • 2015-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多