2012-01-16 7 views
0

iOS用のアプリを開発しており、新しいNSFetchRequest setPropertiesToGroupBy:メソッドに関する多くのドキュメントが見つかりません。NSFetchRequest setPropertiesToGroupBy:一致するすべてのエンティティを返しますか?

私は複数のエンティティBオブジェクトとの関係を持つエンティティAオブジェクトの束を持っています。

特定のパターンに一致するすべてのエンティティBオブジェクトをフェッチし、エンティティAでグループ化する必要があります。これは、すべてのエンティティAに対して別々のDBフェッチを持たないようにするためです。私は等しいエンティティAsのグループを反復することができ、その後、1つのフェッチ要求からのパターンと一致するすべてのエンティティBを持つことになります。

私は、setPropertiesToGroupBy:メソッドが逆B-> A関係でグループ化する必要があり、NSDictionariesの配列を返すはずです。しかし、NSArrayの各項目がエンティティAによって1つのグループに対応していることを意味しますか?そして対応するNSManagedObjectサブクラスはNSDictionaryのどこかにありますか?

答えて

1

いいえ、それはありません。これを行うには2つの方法があります。

  • 使用複数のリクエスト
  • は逆A-> Bの関係は、BSのグループ内にあるすべてのエンティティを取得するための要求を1つ持っています。次に、NSSortDescriptorを含めてBでソートし、結果をグループに分けます。

メモリ内分割により、繰り返しのDBアクセスや要求解析のフェッチが回避されるため、おそらく後者の方が高速です。

関連する問題