如何对 CloudKit 记录值求和

Posted

技术标签:

【中文标题】如何对 CloudKit 记录值求和【英文标题】:How To Sum CloudKit Record Values 【发布时间】:2020-11-24 13:54:11 【问题描述】:

假设您有一个名为 Steps 的 CloudKit 类型,每个步骤记录都有一个值和一个日期。如果您有 500 条记录,是否有让 CloudKit 传回所有值的总和(例如:5,490)?

除了对所有步骤执行 CKQueryOperation 然后手动添加它们之外,我还没有找到其他方法。我对此的担忧是,如果我最终有很多步骤记录,比如 5,000,CKQueryOperation 可能会开始限制我的结果。

【问题讨论】:

【参考方案1】:

不,这在 CloudKit 中是不可能的。您必须使用允许服务器功能的东西,例如 Parse。

但这是一个可以通过本地设备缓存轻松解决的问题。如果您将Step 记录与本地数据库(Realm、CoreData、SQLite 等)同步,您可以简单地查询数据库中的所有步骤并将它们相加。这是我会采取的方法。

【讨论】:

谢谢克利夫顿,我就是这么想的。

以上是关于如何对 CloudKit 记录值求和的主要内容,如果未能解决你的问题,请参考以下文章

如何在 CloudKit 中存储对共享记录的引用

无法从 Cloudkit Cloud (JS) 检索所有记录

如何更新 CloudKit 中记录类型上的字段?

如何对不同列的值求和

如何让多个用户同时更新我的​​一条 CloudKit 记录而不重叠?

如何通知另一台设备 CloudKit 记录已更新?