2010-07-17 32 views
8
嵌入的对象

假设我有在MongoDB的一些对象进行排序:如何在MongoDB中

{ 
"_id":xxx, 
"name":"mike", 
"children": [ 
       {"name":"A", "age":3}, 
       {"name":"B", "age": 5} 
      ] 
} 

如果我要得到这个“迈克”与他的孩子通过“年龄递减”排序,我该怎么办?

我看过Mongoid(在rails中)和morphia(在Java中),没有找到答案。

回答

4

我不知道有什么办法做到这一点。当他们回来的时候,您可能会想要在代码中对孩子进行排序(Ruby,Java)。

这是Mongo的典型限制之一,您并不真正对服务器上的子对象进行“排序”。相反,您可以从数据库中提取它们,然后根据需要对子对象进行排序。

+0

谢谢。在阅读了MongoDB的文档后,我仍然没有找到办法。我认为你是对的,没有办法做到这一点:( – Freewind 2010-07-18 04:14:10

+0

这有点烦人,但它不应该是一个大问题。大多数语言(包括Ruby)使排序非常简单,如果你只是排序小的集合,那么在服务器或客户端上执行它并不重要。 – 2010-07-19 03:32:57