Ниже приведен модифицированный пример из https://docs.mongodb.com/manual/reference/operator/update/positional/#examples
db.students.insert([
{ "_id" : 1, "grades" : [ 85, 80, 80 ] },
{ "_id" : 2, "grades" : [ 88, 90, 92 ] },
{ "_id" : 3, "grades" : [ 85, 100, 90 ] }
])
db.students.updateOne(
{ _id: 1, grades: 80 },
{ $set: { "grades.$" : 82 } }
{ multi: true }
)'
Я ожидаю, что {multi: true}
обновит несколько документов, соответствующих критериям выбора.
На самом деле следующее тоже не работает:
db.students.insert([
{ "_id" : 1, "grades" : [ 85, 82, 82 ] },
{ "_id" : 2, "grades" : [ 88, 90, 92 ] },
{ "_id" : 3, "grades" : [ 80, 100, 90 ] }
])
db.students.updateOne(
{ _id: 1, grades: 80 },
{ $set: { "grades.$" : 82 } }
{ multi: true }
)'
Я ожидаю, что третий документ будет обновлен до {"_id" : 3, "grades" : [82, 100, 90]}