在 MongoDB 中,如何使用 $set 来更新嵌套值/嵌入文档?
在 MongoDB 中,如何使用 $set
更新嵌套值?
例如,考虑具有以下文档的集合 people:
{
_id: ObjectId("5a7e395e20a31e44e0e7e284"),
name: "foo",
address: { street: "123", town: "bar" }
}
如何更新嵌入在 address
文档中的 street
字段123” 到“大街”
?
In MongoDB how do you use $set
to update a nested value?
For example, consider a collection people with the following document:
{
_id: ObjectId("5a7e395e20a31e44e0e7e284"),
name: "foo",
address: { street: "123", town: "bar" }
}
How do I update the street
field embedded in the address
document from "123"
to "Main Street"
?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用点符号:
Using the dot notation:
除了尼尔斯的回答之外,还要验证嵌套值的“类型”。就我而言,它是由 json 形成的“字符串”。尽管这可能不太可能,但请确保该值具有正确的类型。
In addition to Niels' answer, also do verify the "type" of the nested value. In my case, it was a "string" formed from json. Though this might be unlikely, but do ensure that the value has the right type.