sql >> Databáze >  >> NoSQL >> MongoDB

Projděte Mongo Collection a aktualizujte pole v každém dokumentu

Nejlepší způsob, jak toho dosáhnout, je použít "Hromadné" operace

var collection = db.getCollection('schedules');
var bulkOp = collection.initializeOrderedBulkOp();
var count = 0;
collection.find().forEach(function(doc) {
    bulkOp.find({ '_id': doc._id }).updateOne({
        '$set': { 'time': new Date(doc.time) }
    });
    count++;
    if(count % 100 === 0) {
        // Execute per 100 operations and re-init
        bulkOp.execute();
        bulkOp = collection.initializeOrderedBulkOp();
    }
});

// Clean up queues
if(count > 0) {
    bulkOp.execute();
}


  1. MongoDB – získejte dokumenty s maximálním atributem na skupinu v kolekci

  2. Přejít:Vytvořte rozhraní io.Writer pro přihlášení do databáze mongodb

  3. Nelze získat krytý dotaz pro sdílenou kolekci v MongoDB

  4. API Connect zobrazuje chybu Cannot GET /apim/ při aktualizaci schématu