Puoi usare il $
operatore posizionale per eseguire questa operazione:
db.soup.update(
{_id: ObjectId("50b429ba0e27b508d854483e"), 'array.id': '2'},
{$set: {'array.$.letter': 'c'}})
Il $
nell'oggetto update funge da segnaposto per il primo elemento di array
in modo che corrisponda al selettore di query.