In MongoDB come si usa $ impostato per aggiornare un documento nidificato valore / embedded?

StackOverflow https://stackoverflow.com/questions/3828452

  •  26-09-2019
  •  | 
  •  

Domanda

In MongoDB come si usa $set per aggiornare un valore annidato?

Per esempio, si consideri una collezione persone con il seguente documento:

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

Come faccio ad aggiornare il campo street incorporato nel documento address da "123" a "Main Street"?

È stato utile?

Soluzione

Uso della notazione :

db.people.update({ }, { $set: { "address.street": "Main Street" } })

Altri suggerimenti

In aggiunta alla risposta Niels', fare anche verificare il 'tipo' di valore nidificato. Nel mio caso, si trattava di una "stringa" formato da JSON. Anche se questo potrebbe essere improbabile, ma fate in modo che il valore ha il tipo giusto.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top