我可以从mongodb中的每个文档中选择一个数组吗?

时间:2013-07-11 02:59:55

标签: mongodb aggregation-framework nosql

我在mongodb中有一组blogPost文档。每篇博文都有一个包含评论文档的comments数组。我是否可以查询mongodb并将所有注释的列表合并到一个列表中?

我想对每篇博文中的所有评论进行单一投影。

1 个答案:

答案 0 :(得分:4)

您可能需要使用Aggregation Framework来完成此操作。具体而言,$unwind

例如:

db.blogPost.aggregate(
    { $project: {
        _id : 0 ,
        comments: 1 }
    },
    { $unwind: "$comments" }
);

或者,如果在您的情况下可行,您可以在应用程序级别而不是数据库级别执行注释的串联,使Mongo查询只是在所有博客帖子中查询。