MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

MongoDB:Актуализиране на документи с използване на данни от същия документ

Актуализация: Ако всичко, което трябва да направите, е да промените структурата на документ, без да променяте стойностите, вижте отговора на gipset за добро решение.

Съгласно коментар (сега недостъпен) на страницата за актуализиране на документацията, не можете да препращате към свойствата на текущия документ от update() .

Ще трябва да прегледате всички документи и да ги актуализирате по следния начин:

db.events.find().snapshot().forEach(
  function (e) {
    // update document, using its own properties
    e.coords = { lat: e.lat, lon: e.lon };

    // remove old properties
    delete e.lat;
    delete e.lon;

    // save the updated document
    db.events.save(e);
  }
)

Такава функция може да се използва и в задача за намаляване на картата или db.eval() от страна на сървъра работа, в зависимост от вашите нужди.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как мога да генерирам ObjectId с mongoose?

  2. MongoDB $isArray

  3. Как да задам първичен ключ в MongoDB?

  4. Как да изтриете много колекции mongodb наведнъж?

  5. Пагинация с MongoDB