iphone - 获取 CoreData 中不同的 ID 列表

标签 iphone core-data distinct-values

在 CoreData 表上执行此查询的最有效方法是什么?要使用标准员工数据库模型,我希望包含职位描述为“厨师”的员工的所有部门都有不同的部门 ID。碰巧,这里只有一个相关的表(员工)——我实际上没有部门表,只有重复的部门 ID。

最佳答案

考虑到您描述的模式,我将使用诸如 @"jobDescription LIKE 'chef'" 之类的谓词(格式字符串)执行提取,然后使用键值编码来获取唯一值结果数组:

[result valueForKeyPath:@"@distinctUnionOfValues.departmentID"];

或创建一组:

NSSet *deparmentIDs = [NSSet setWithArray:[result valueForKey:@"departmentID"]];

根据问题的规模(有多少员工),在内存中执行最后一步可能会令人望而却步。此时,您必须创建一个部门实体并进行工作以确保将适当的员工连接到每个部门。然后,您可以使用诸如 @"ANYEmployees.jobDescription LIKE 'chef'" 这样的谓词(格式字符串)来获取部门,以获取具有厨师员工的部门。

关于iphone - 获取 CoreData 中不同的 ID 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3578676/

相关文章:

ruby-on-rails - 如何从多态关联中的关联模型中提取不同的列值?

iphone - iOS 确定以编程方式创建的按钮

iphone - 从 iphone 应用程序中获取 html 链接

iphone - JSON 响应显示在警报 View 中?

iphone - iOS - 使用 AVCaptureSession 拍摄图像

ios - 将 Int16 类型的整数保存到 Core Data - Swift

powershell - 从 powershell 中的列中选择不同的项目

线性时间不同值的最大子数组的算法

cocoa - 如何使用 NSDistributedNotifications 在进程之间共享核心数据存储?

ios - Swift NSPredicate 返回所有结果而不是单个结果