NSFetchRequest setPropertiesToGroupBy: возвращает все совпадающие сущности? - PullRequest
0 голосов
/ 16 января 2012

Я разрабатываю приложение для iOS, и я не могу найти много документации по новому методу NSFetchRequest setPropertiesToGroupBy:.

У меня есть куча объектов сущности A, которые имеют отношения с несколькими объектами сущности B.

Я хочу получить все объекты объекта B, которые соответствуют определенному шаблону, и сгруппировать их по объекту A. Это сделано для того, чтобы у меня не было отдельной выборки из БД для каждого объекта A. Результаты в идеале были быструктурирован так, чтобы я мог перебирать группы одинаковых сущностей As, и тогда все сущности B соответствовали бы шаблону из одного запроса на выборку.

Я вижу, что метод setPropertiesToGroupBy: должен позволять мне группировать пообратное отношение B-> и возвращает массив NSDictionaries.Но значит ли это, что каждый элемент в NSArray соответствует одной группе по сущности A?И что соответствующие подклассы NSManagedObject можно найти где-то в NSDictionary?

1 Ответ

1 голос
/ 22 января 2012

Нет, это не так.Есть два способа сделать это:

  • Использовать несколько запросов
  • Иметь один запрос, чтобы получить все объекты A, в которых обратное отношение A-> B находится в группе B.Затем включите NSSortDescriptor для сортировки по B и разделения результатов по группам.

Последнее, вероятно, происходит быстрее, поскольку разделение в памяти позволяет избежать повторных обращений к БД и разбора запроса выборки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...