MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Cara memperbarui item dari array yang bersarang di dalam array

Di MongoDB 4.0 Anda dapat menggunakan $[<identifier>] sintaks dan tambahkan ArrayFilters ke UpdateOptions parameter:

var filter = Builders<Model>.Filter.Empty;
var update = Builders<Model>.Update.Set("Options.$[option].Inventory.$[inventory].Name", "New name");

var arrayFilters = new List<ArrayFilterDefinition>();
ArrayFilterDefinition<BsonDocument> optionsFilter = new BsonDocument("option.Id", new BsonDocument("$eq", optionId));
ArrayFilterDefinition<BsonDocument> inventoryFilter = new BsonDocument("inventory.Id", new BsonDocument("$eq", inventoryId));
arrayFilters.Add(optionsFilter);
arrayFilters.Add(inventoryFilter);

var updateOptions = new UpdateOptions { ArrayFilters = arrayFilters };

var result = DefaultCollection.UpdateOne(filter, update, updateOptions);

Itu akan secara unik mengidentifikasi Inventory item yang perlu diperbarui di dalam Options




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cara Menginstal MongoDB

  2. Agregasi Mongo:mempartisi nilai ke dalam grup (berdasarkan partisi)

  3. Flask lambat untuk menanyakan Mongdb

  4. Bagaimana cara menyimpan data gumpalan di MongoDB?

  5. Cara mengimpor data ke mongoDB