sql >> Database >  >> NoSQL >> MongoDB

MongoDB-update. Proberen een veld in te stellen vanuit een eigenschap van een ander

Probeer de volgende code:

db.collection.find(your_querry).forEach(function(doc) {
  doc.field1 = doc.field2.length;
  db.collection.save(doc);
});

Je kunt your_querry . gebruiken om slechts een deel van de originele collectie te selecteren, voert u een update uit. Als je een hele verzameling wilt verwerken, gebruik dan your_querry = {} .

Als u wilt dat alle bewerkingen atomair zijn, gebruikt u update in plaats van save :

db.collection.find( your_querry, { field2: 1 } ).forEach(function(doc) {
  db.collection.update({ _id: doc._id },{ $set: { field1: doc.field2.length } } );
});


  1. Hoe u op de juiste manier door een groot json-bestand kunt bladeren

  2. HBase-regio's samenvoegen

  3. MongoDB Externe verbinding met php

  4. Kan geografische sleutels niet extraheren, onbekend GeoJSON-type:{coördinaten:[13.42493100000003, 52.50074619999999]