sql >> Database >  >> NoSQL >> MongoDB

Hoe (WAAR) kolom =kolom in Mongo?

U wilt de documentatie voor het bijwerken controleren.
http://www.mongodb. org/display/DOCS/Updaten

Uw code kan er als volgt uitzien:
db.tbl.update( { c:{$ne:0}}, { $set: { a : b } } );

Als u geavanceerde zoekopdrachten wilt opfrissen (bijv. met $ne ), kijk dan hier:
http://www.mongodb.org /display/DOCS/Advanced+Queries

EDIT:
Blijkbaar kun je niet updaten met gegevens uit hetzelfde document.
MongoDB:documenten bijwerken met gegevens uit hetzelfde document

EDIT 2 (oplossing met kaartverkleining) :

var c = new Mongo();
var db = c.getDB('db')
var s = db.getCollection('s')
s.drop();
s.save({z:1,q:5});
s.save({z:11,q:55});

db.runCommand({
mapreduce:'s',
map:function(){
  var i = this._id; //we will emit with a unique key. _id in this case
  this._id=undefined; //strange things happen with merge if you leave the id in
  //update your document with access to all fields!
  this.z=this.q;

  emit(i,this);
}, 
query:{z:1},    //apply to only certain documents
out:{merge:'s'} //results get merged (overwrite themselves in collection)
});

//now take a look
s.find();



  1. Is er een manier om een ​​cluster door te spoelen, zodat alle sleutels van master en slaves uit de db worden verwijderd?

  2. Gradle-afhankelijkheden werken niet in IntelliJ

  3. mongoDB witte lijst IP

  4. Java Mongodb nummer lange query