2010-11-15 69 views
2

我有一个具有“颜色”属性的核心数据对象的iPhone应用程序。我想获取已保存的所有颜色值的列表。一个简单的SQL语句SELECT DISTINCT(color) FROM myObjectTable很容易做到这一点。如何在核心数据中执行此操作,而无需将所有对象(可能有数千个对象)加载到内存中的NSSet中?如何高效地从NSManagedObject获取属性的所有有效值?

回答

2

您可以:

1)设置NSFetchRequest的请求类型来NSDictionaryResultType

2) “setPropertiesToFetch” 在NSFetchRequest获取唯一的财产,而不是整个对象。

0

我还没有找到一个很好的解决方案,但无论是。但是你可以像Nevin建议的那样获得特定的属性而不是整个管理对象。

请参阅Apple的文档中的Fetching Specific Values以获取更多详细信息。

您将得到一个NSDictionary对象的NSArray,然后您可以循环,提取您正在查找的颜色值。

相关问题