【问题标题】:How to update a property of a sub-document in an embedded array?如何更新嵌入数组中子文档的属性?
【发布时间】:2017-03-04 07:57:42
【问题描述】:

给定数据库中的以下文档,我想更新地址数组的密码。

我在 Mongodb 中使用 $ 位置定位器。但这并没有找到嵌入多个级别的文档。

"_id": ObjectId("58b91ccf3dc9021191b256ff"),
"phone": 9899565656,
"Email": "sumit@mail.com",
"Organization": "xyz",
"Name": "sumit",
"address": [{
    "city": "chennai",
    "pincode": 91,
    "_id": ObjectId("58b91db48682ab11ede79b28"),
    "choice": [{
        "_id": ObjectId("58b91fa6901a74124fd70d89")
    }]
}]

使用此查询进行更新。

db.presenters.update({"Email":"sumit@mail.com","address.city":"chennai"},{$set:{"address.$.pincode.": 95 }})

【问题讨论】:

  • 有一个 nextra '.'在不需要的“$.pincode”之后。请这样尝试:{"address.$.pincode": 95 }

标签: mongodb


【解决方案1】:

更新时您的字段名称似乎不正确,末尾多了一个点。尝试关注

db.presenters.update({"Email":"sumit@mail.com","address.city":"chennai"},
   {$set:{"address.$.pincode": 95 }})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-10
    • 1970-01-01
    相关资源
    最近更新 更多