CoreData:在一次提取中返回一组与 nsnumber 索引数组匹配的实体

Posted

技术标签:

【中文标题】CoreData:在一次提取中返回一组与 nsnumber 索引数组匹配的实体【英文标题】:CoreData: returning a set of entities in a single fetch that match an array of nsnumber indexes 【发布时间】:2010-07-03 01:15:05 【问题描述】:

所以我想获取与实体相关联的随机生成的索引号匹配的不同数量的实体。

所以我得到了给定集合中的实体计数,并在该范围内生成了一个随机的 nsnumber 集合。现在我需要在单个提取请求中提取索引与这些生成的数字理想匹配的实体。我想我需要写一个漂亮的谓词,但我对如何解释随机选择的不同数量感到困惑。有时我需要拉出 6 个实体,而有时我可能需要 30 个。如何制定具有这样不同要求的谓词?

谢谢,

尼克

【问题讨论】:

【参考方案1】:

您的NSManagedObject 实体中是否有实际的整数索引?如果是这样,您可以创建这些索引的数组,然后创建一个谓词,如:

[NSPredicate predicateWithFormat:@"self.index in %@", arrayOfIndexes];

如果您的实体没有整数索引,那么您需要将它们全部拉回一个数组中(因为集合没有索引),然后从该数组中拉出您想要的那些。

【讨论】:

以上是关于CoreData:在一次提取中返回一组与 nsnumber 索引数组匹配的实体的主要内容,如果未能解决你的问题,请参考以下文章

获取Mime Message没有返回base 64解码版本? (Gmail API)

CoreData - 按关系批量获取对象以获得更好的性能

从 CoreData 实体中的 NSNumber 获取 intValue 时无法识别的选择器崩溃

如何在一次操作中解压缩和 gzip 提取的文件?

记录一次正则提取错误

Postgres / Redshift:在一次调用中从组的日期列中提取季度和年份?