在 MongoDB 中,如何使用$set
更新嵌套值?
例如,考虑具有以下文档的集合people :
{
_id: ObjectId("5a7e395e20a31e44e0e7e284"),
name: "foo",
address: { street: "123", town: "bar" }
}
如何将文档street
中嵌入的字段从 更新为?address
"123"
"Main Street"
在 MongoDB 中,如何使用$set
更新嵌套值?
例如,考虑具有以下文档的集合people :
{
_id: ObjectId("5a7e395e20a31e44e0e7e284"),
name: "foo",
address: { street: "123", town: "bar" }
}
如何将文档street
中嵌入的字段从 更新为?address
"123"
"Main Street"
使用点符号:
db.people.update({ }, { $set: { "address.street": "Main Street" } })
除了 Niels 的回答,还要验证嵌套值的“类型”。就我而言,它是由 json 形成的“字符串”。虽然这可能不太可能,但请确保该值具有正确的类型。