arrays - 如何在MongoDb集合的数组字段中投影元素?

标签 arrays mongodb projection

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/

相关文章:

javascript - 比较数组中的 JavaScript 对象时出现问题

c# - 字符串数组到 Int 数组

python - 从 numpy 数组获取指针以将图像发送到 C++

php - 我的 RockMongo(MongoDB GUI)发生了什么事?

javascript - 如何从匹配特定值的 MongoDB 文档更新数组?

c# - 基本渲染 3D 透视投影到带摄像头的 2D 屏幕(不带 opengl)

ios - 带有 Core Animation 的立方体全景投影。是否可以?

JavaScript - 无法打印具有相同键名称的元素

node.js - 如何更新多个文档?

java - 实现 Google 墨卡托(球形墨卡托)