sql >> Database >  >> NoSQL >> MongoDB

Update ingebed object binnen array in array in MongoDB

U kunt alleen de $ . gebruiken positionele operator voor arrays met één niveau. In jouw geval heb je een geneste array (heros is een array, en daarbinnen heeft elke held een spells reeks).

Als u de indexen van de arrays kent, kunt u expliciete indexen gebruiken bij het uitvoeren van een update, zoals:

> db.test.update({"heros.nickname":"test", "heros.spells.spell_id":1}, {$set:{"heros.0.spells.1.level":3}});


  1. Mongo-cxx-driver bouwen met CMake ExternalProject_Add

  2. hoe gegevens van mysql naar redis te verplaatsen

  3. MongoDb - Gebruik van een multi-CPU-server voor een zware schrijftoepassing

  4. MongoDB GridFs met C#, hoe bestanden zoals afbeeldingen op te slaan?