2017-01-09 3 views

Antwort

1

Update: Ich früher falsche Lösung gegeben hatte. Wie die Antwort akzeptiert wird, ist es mit der richtigen Art und Weise zu aktualisieren

db.collectionName.find().snapshot().forEach(function (elem) { 
     db.collectionName.update({_id: elem._id}, {$set: {col2: elem.col1}}); 
    } 
); 

Verwenden Sie normale Update-Abfrage entlang wiht $set zum Setzen eines neuen Feldwert

db.collectionName.update({}, {$set: {col2: '$col1'}}, {multi: true}) 

+0

Dies aktualisiert die 'col2' Feld in allen Dokumenten in der Sammlung, um das Zeichenfolgenliteral ''$ col1'' zu haben, nicht den Wert von' col1'. – chridam