我有3个核心数据实体:
与
相关的实体A和实体B和用户实体A< ------>>实体B<< ----->用户
我想按实体B中该特定用户的条目数对实体A中的条目进行排序。
我可以这样做:
这虽然看起来非常愚蠢。
无论如何我可以使用子查询对NSSortDescriptor进行实体A排序吗? 或者如果你知道其他任何方式我应该解决这个问题?
答案 0 :(得分:1)
您无法对集合运算符进行排序,因此无法使用排序描述符来执行您想要的操作。与所有谓词一样,子查询只是根据测试找到对象,它们不对它们进行排序。
最简单的解决方案是向bCount
添加一个瞬态属性,例如EntityA
。然后让getter方法返回相关EntityB
个对象的计数:
-(NSNumber *) bCount{
return [NSNumber numberWithInt:[self.bs count]];
}
然后在EntityA
键上对bCount
个对象进行排序。