Mongodb 重塑集合中的所有文档

Mongodb 重塑集合中的所有文档,mongodb,mongodb-query,aggregation-framework,Mongodb,Mongodb Query,Aggregation Framework,我的文件结构如下: { "_id" : 1, "item" : { "name" : "abc", "price" : 10, "quantity" : 2, "date" : ISODate("2014-03-01T08:00:00Z") } } 我想在此基础上转换每个文档: { "_id" : 1, "name" : "abc", "price" : 10, "quant

我的文件结构如下:

{
    "_id" : 1,
    "item" : {
        "name" : "abc",
        "price" : 10,
        "quantity" : 2,
        "date" : ISODate("2014-03-01T08:00:00Z")
    }
}
我想在此基础上转换每个文档:

{
    "_id" : 1,
    "name" : "abc",
    "price" : 10,
    "quantity" : 2,
    "date" : ISODate("2014-03-01T08:00:00Z")
}
换句话说,删除嵌入的文档,但不删除细节

谢谢

您可以使用,尤其是运算符。运算符允许您将结果写入另一个集合

db.collection.aggregate([
{“$project”:{
“\u id”:“$\u id”,
“名称”:“$item.name”,
“价格”:“$item.price”,
“数量”:“$item.quantity”,
“日期”:“$item.date”}
}, 
{“$out”:“集合”}
])
您现在看到的文档如下所示:

{
“_id”:1,
“名称”:“abc”,
“价格”:10,
“数量”:2,
“日期”:ISODate(“2014-03-01T08:00:00Z”)
}

您还可以通过为新结果集合指定相同的名称来覆盖先前存在的集合。

这意味着:将集合更新为以下结构。