私のデータモデルには、date(NSDate
)とnumberOfBiscuits(NSNumber
)という2つの属性を持つClickerRecordエンティティがあります。新しいレコードが追加されるたびに、numberOfBiscuitsの別の値を入力することができます。結果のサブセットに対して独立した計算を返す単一フェッチ要求を実行できますか?
現在、範囲内の毎日のフェッチ要求を行い、対応するNSExpression
を使用して、その日のすべてのnumberOfBiscuits値の合計を計算するビスケットの数の1日平均を計算します。
問題:非同期フェッチ要求を使用してメインスレッドをブロックしないようにしています。最初と最後のレコードの間に数日があるとかなり遅くなります。フェッチ要求は順番に実行されます。 また、すべてのレコードをメモリにロードして並べ替えや計算を実行することもできますが、レコードの数が非常に多くなると問題になる可能性があります。
したがって、私の質問:単一のフェッチ要求を行い、numberOfBiscuitsの1日合計のエントリを持つ辞書を取得するために、NSExpressionsを使用して各日付間隔のサブ述語のようなものを追加することは可能ですか? そうでない場合は、この状況ではどのような方法が推奨されますか?
私はサブクエリについて読んだことがありますが、私が理解している限り、このような使用は意図されていません。
これは私がSOに求めている最初の質問ですので、私は明確な方法でそれを書かれていることを期待:)
実際、異なる間隔(週、月など)が問題になります。私はメモリ内で計算を行うことに頼るつもりです。エンティティはより多くの属性を持ちますが、フットプリントを低く抑えるために、これらの2つを取得します。うまくいけば、ほとんどのユーザーにとってボリュームは問題になることはありません。それ以外の場合は、fetchBatchSizeを追加する必要がありますか?あなたのご意見ありがとうございます! – Rygen