如何在MongoDB中查询整个集合,包括引用集合?

时间:2014-04-07 14:02:43

标签: mongodb collections reference

我正在使用MongoDB。我有三个系列。帖子,类型和类别。帖子有类型和类别的参考ID,如下所示;

收集后:{“name”:“Post One”,类型:[“typeoneId”,“typetwoId”,“typethreeId”],类别:[“catOneId”,“catTwoId”, “catThreeId”]});

类型集合:{“name”:“Type One”,“_ id”:“typeoneId”},...

类别集合:{“name”:“category one”,“_ id”:“catOneId”},....

我想查询一个大集合,包括有关帖子,类型和类别的所有信息。 我如何在Mongodb中查询?

1 个答案:

答案 0 :(得分:0)

单独使用MongoDB无法做到这一点。您需要做的是在types数组中运行类型_ids的后续查询以填充这些(以及类别)。这是每个POST的一个查询,然后是每个帖子的两个后续查询。也许有更快的方法可以做到这一点。

对于Mongoose,您可以使用populate

Post.find().populate('types').populate('categories')