sql >> Database >  >> NoSQL >> MongoDB

MongoDB:Subdocument bijwerken

U moet de $ positionele operator

. gebruiken

Bijvoorbeeld:

update({ 
       _id: 7, 
       "comments._id": ObjectId("4da4e7d1590295d4eb81c0c7")
   },{
       $set: {"comments.$.type": abc}
   }, false, true
);

Ik heb het niet getest, maar ik hoop dat het nuttig voor je zal zijn.

Als u de structuur van het document wilt wijzigen, moet u

. gebruiken

db.collection.update( criteria,objNew, upsert, multi )

Argumenten:

criteria - query which selects the record to update;
objNew - updated object or $ operators (e.g., $inc) which manipulate the object
upsert - if this should be an "upsert"; that is, if the record does not exist, nsert it
multi - if all documents matching criteria should be updated

en voeg nieuwe objNew in met nieuwe structuur. controleer dit voor meer details



  1. MongoDB $grootte

  2. Het wijzigen van de Redis-poort in Docker Compose werkt niet

  3. Wanneer gebruik je GridFS op MongoDB?

  4. NoSQL (MongoDB) vs Lucene (of Solr) als uw database