所以我基本上试图选择整个对象,对于按多对一关系中特定属性的出现次数排序的前10个对象。
基本上在一个表中,我有一个'id'属性,映射到另一个表。可以有任意数量的重复出现的id,我希望得到最常出现的10个对象。
我可以在sql中处理这个问题,但不知道如何在核心数据中实现equivelent?
这是我在sql中得到的:
SELECT *, count(id) AS count FROM ____ ORDER BY count DESC LIMIT 0,10
非常感谢所有人的帮助!非常感谢
答案 0 :(得分:0)
我很难理解我是否正确理解了这个问题,或者你的预期行为是什么:对结果进行排序。例如,如果count(“some_specific_id”)> 10,那么你想要回10个对象?这有关系吗?
除了这个问题,我不确定你是否能够轻松或有效地做到这一点。
鉴于(据我所知):
这是接近它的一种方法:
在没有获取所有Bar实体的情况下,我无法通过Apple的文档找到任何方法来执行此操作。有关您的特定实体的更多信息,您可能能够更聪明地找到更好的信息。浮动的其他建议说,如果你真的想知道Bar-> Foo关系中的对象数,请将其保存在一个单独的属性中。然后你可以通过fooCount来获取Bar的值,并且限制为10,因为这将是查找10个Foo对象所需的上限。