Ios NSFETCHTREQUEST GroupBy的属性为to many关系

Ios NSFETCHTREQUEST GroupBy的属性为to many关系,ios,core-data,nsfetchrequest,Ios,Core Data,Nsfetchrequest,我在核心数据中保存了一些记录。 记录有很多关系。 按对多关系搜索持久化数据似乎很简单,我使用“子查询”来实现它。我面临着分组记录的问题 我需要将“ZCMORecord”按“ZCMORecordValue”的stringValue分组 因为“ZCMORecordValue”是一个对多关系 我甚至需要将ZCMORecords与一个或多个“ZCMORecordValue”分组 尝试此操作时出现错误 带有GROUP BY组件的查询中的SELECT子句只能包含 在GROUP BY或聚合函数中命名的属性 我

我在核心数据中保存了一些记录。 记录有很多关系。 按对多关系搜索持久化数据似乎很简单,我使用“子查询”来实现它。我面临着分组记录的问题

我需要将“ZCMORecord”按“ZCMORecordValue”的stringValue分组

因为“ZCMORecordValue”是一个对多关系

我甚至需要将ZCMORecords与一个或多个“ZCMORecordValue”分组

尝试此操作时出现错误

带有GROUP BY组件的查询中的SELECT子句只能包含 在GROUP BY或聚合函数中命名的属性

我需要分组取记录。 我不知道在“setPropertiesToGroupBy:”和“setHavingPredicate:”中设置什么才能获得正确的结果

好的!!我如何存储数据的示例

ZCMORecordValues


id    stringValue<NSString>  dateValue<NSDate>     record


name     Alex                     -            record1<ZCMORecord>

DOB      -                     10/10/1990      record1<ZCMORecord>

name     Anto                     -            record2<ZCMORecord>

DOB      -                     05/05/1990      record2<ZCMORecord>

name     Max                     -            record3<ZCMORecord>

DOB      -                     10/10/1990      record3<ZCMORecord>

name     Mary                     -            record4<ZCMORecord>

DOB      -                     01/01/1990      record4<ZCMORecord>
zcmorecord值
id stringValue日期值记录
姓名Alex-record1
1990年10月10日记录1
姓名:Anto-record2
1990年5月5日记录2
名称Max-record3
1990年10月10日记录3
名字玛丽-记录4
1990年1月1日记录4
现在我想把我的“ZCMORecord”和DOB联系起来


任何关于更改模型以便于分组的建议都是受欢迎的

最简单的方法是使用
NSFetchedResultsController
,获取记录值并将
stringValue
作为
sectionNameKeyPath
传递

如何通过多种方式对图像进行分组?你需要展示一个例子,说明你在寻找什么样的结果,我猜你需要在抓取之后进行(或者在模型中添加其他信息以方便操作)@Wain让我们假设我按一件事分组。我怎样才能使它工作。如何设置havingPredicate和propertiesToGroupBy?我无法在获取后执行此操作,因为我有大量记录。这一操作将在实体本身上执行,而不是在对多关系末尾的实体上执行,因此没有执行“按组对多”关系:s。可以为了按多种事物进行分组,我编辑了我的问题。我该怎么做呢@Wainjust在group by数组中指定这些属性名称(您的问题不再与托管对象模型相关,因此现在很难说具体的内容)。我需要同时按dateValve和stringValue进行分组。您可以通过fetched results控制器执行第一个操作,第二个在内存中。如果你能解释一下你的用例也会有帮助的——我怀疑这是否合理。为了更好地理解,我改变了我的问题。请建议一种方法,我可以通过fetched results controller@MundiI将其分组,因为它不能在sectionNameKeyPath中提供stringValue或dateValue,因为它也接受这些空条目。(我想要的是如何指定分组时要考虑的“仅”实体)
ZCMORecordValues


id    stringValue<NSString>  dateValue<NSDate>     record


name     Alex                     -            record1<ZCMORecord>

DOB      -                     10/10/1990      record1<ZCMORecord>

name     Anto                     -            record2<ZCMORecord>

DOB      -                     05/05/1990      record2<ZCMORecord>

name     Max                     -            record3<ZCMORecord>

DOB      -                     10/10/1990      record3<ZCMORecord>

name     Mary                     -            record4<ZCMORecord>

DOB      -                     01/01/1990      record4<ZCMORecord>