我有以下文件。
{ "id" : 2, "color" : { "description" : "red" } }
{ "id" : 2, "color" : { "description" : "blue" } }
{ "id" : 2, "color" : { "description" : "purple" } }
{ "id" : 3, "color" : { "description" : "red" } }
{ "id" : 3, "color" : { "description" : "orange" } }
但我希望将颜色值上移一级:
{ "id" : 2, "color" : "red" }
{ "id" : 2, "color" : "blue" }
{ "id" : 2, "color" : "purple" }
{ "id" : 3, "color" : "red" }
{ "id" : 3, "color" : "orange" }
有没有办法将此作为聚合管道的一部分?
答案 0 :(得分:1)
您是否希望插入文档或仅将结果作为聚合查询的一部分返回结果?如果以后使用聚合,您可以像下面这样做 -
> db.coll1.aggregate([{$project:{id:'$id','color':'$color.description'}}])
,结果是
{ "_id" : ObjectId("5a4486946c4238ae80280941"), "id" : 2, "color" : "red" }
请告诉我这是否是您要找的?