提取并本地过滤NSArray或多次执行fetchRequest

问题描述:

我需要计数no。来自集合中核心数据的对象满足一定的标准。提取并本地过滤NSArray或多次执行fetchRequest

(例如,统计不同部门的员工人数)。

有两种解决方案,以我的问题:

  • (1)取在集合中只有一个请求以及用于使用NSPredicate

    各系数组本地过滤
  • (2)执行的多个NSFetchedRequests直接对数据

问题是WH ICH的解决方案将是最快且占用最少的给定存储量,这是仅供仪表目的,是在应用程序没有重要性来讲behavior/UI.

反问:如果是(1) - 这过滤数组的最佳方法是什么?手动循环和计数或NSPredicate

P.S:

a。我知道部门的名字。 (它实际上是枚举)

b。收集很小 - 将是最大值50

+2

为什么你不能要求核心数据为你做所有的工作?你试图回答什么是实体,关系和精确问题? – Avi

1是最快的并占用大部分内存。 2将使用最少的内存,但可能需要更长的时间。

但是,这并非总是如此。如果单个提取请求的数量将包含许多与其他提取请求将返回的相同的员工数据集,那么它甚至可能是相反的。但是,当你在为部门取材时,事实并非如此。

对于一个小集合,它可能没有太大的区别。

计数问题:这也取决于。但是,如果集合增长,我会为谓词保留以备将来使用。