50

$setMongoDB では、ネストされた値をどのように更新しますか?

たとえば、次のドキュメントを持つコレクションpeopleについて考えてみます。

{
  _id: ObjectId("5a7e395e20a31e44e0e7e284"),
  name: "foo",
  address: { street: "123", town: "bar" }
}

ドキュメントstreetに埋め込まれたフィールドを からに更新するにはどうすればよいですか?address"123""Main Street"

4

2 に答える 2

94

ドット表記の使用:

db.people.update({ }, { $set: { "address.street": "Main Street" } })
于 2010-09-30T07:04:12.213 に答える
2

Niels の回答に加えて、ネストされた値の「タイプ」も確認してください。私の場合、それはjsonから形成された「文字列」でした。可能性は低いかもしれませんが、値の型が正しいことを確認してください。

于 2015-03-11T06:30:59.197 に答える