Ответ 1
Вы можете использовать метод курсора cursor.forEach()
в оболочке mongo для достижения этой цели:
db.myDoc.find({rand: {$exists : false }}).forEach(function(mydoc) {
db.myDoc.update({_id: mydoc._id}, {$set: {rand: Math.random()}})
})
Я пытаюсь обновить все документы в коллекции со случайными числами. Каждая коллекция должна иметь другое число. Мой текущий код:
db.myDoc.update({ rand: {$exists : false }},{$set : {rand:Math.random()}},{multi:true})
заполняет ВСЕ документы с ТАКОЙ случайной величиной. Как исправить?
Вы можете использовать метод курсора cursor.forEach()
в оболочке mongo для достижения этой цели:
db.myDoc.find({rand: {$exists : false }}).forEach(function(mydoc) {
db.myDoc.update({_id: mydoc._id}, {$set: {rand: Math.random()}})
})