我有一个类似以下的文档:
{
"_id" : "59ba903dacea50d0d7d47168",
"sections" : [
{
"_id" : "59d9dd7947ce651544c5d4c1",
"sectionName" : "Section 1"
},
{
"_id" : "59d9dd8147ce651544c5d4c2",
"sectionName" : "Section 2"
},
{
"_id" : "59d9dd9747ce651544c5d4c3",
"sectionName" : "Section 3"
}
]
}
我正在使用投影将字段 "_id" 重命名为 "id" ,将 "sectionName" 重命名为 "name",这是使用查询实现的。
db.getCollection('tmp').aggregate([
{$project:{"sections.id":"$sections._id", "sections.name":"$sections.sectionName"}}
])
期望的输出是:
{
"_id": "59ba903dacea50d0d7d47168",
"sections": [
{"id": "59d9dd7947ce651544c5d4c1", "name": "Section 1"},
{"id": "59d9dd8147ce651544c5d4c2", "name": "Section 2"},
{"id": "59d9dd9747ce651544c5d4c3", "name": "Section 3"}
]
};
但它似乎不起作用,我做错了什么?
请注意,我不是像这个问题中那样尝试更新此文档,我想以所需格式投影文档。
"$sections._id":"sections.id"
。 - ZombieChowder_.id
字段改成.id
,我猜。 - ZombieChowder