MongoDb收集示例(人):
{
"id": "12345",
"schools": [
{
"name": "A",
"zipcode": "12345"
},
{
"name": "B",
"zipcode": "67890"
}
]
}
所需的输出:
{
"id": "12345",
"schools": [
{
"zipcode": "12345"
},
{
"zipcode": "67890"
}
]
}
我当前用于检索所有代码的部分代码:
collection.find({}, {id: true, schools: true})
我正在查询整个集合。但是我只想返回学校元素的邮政编码部分,而不是其他字段(因为实际的学校对象可能包含更多我不需要的数据)。我可以检索所有内容并删除代码中不需要的字段(例如学校的“名称”),但这不是我想要的。我想做一个MongoDb查询。
最佳答案
您可以使用点表示法来投影嵌入在数组中的文档内的特定字段。
db.collection.find({},{id:true, "schools.zipcode":1}).pretty()
关于arrays - 如何在MongoDb集合的数组字段中投影元素?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42918456/