sql >> Databáze >  >> NoSQL >> MongoDB

Aktualizujte objekty vnořených polí na základě vlastnosti v MongoDB

Musíte použít $ positional operátor k aktualizaci prvku pole a pomocí multi: true možnost můžete aktualizovat více dokumentů se stejnou shodou

db.collection.update(
  { 'items': { '$elemMatch': { 'itemName': 'Name 1' }}},
  { '$set': { 'items.$.itemName': 'New Name' }},
  { 'multi': true }
)

a s mongodb 3.6 arrayFilters

db.collection.update(
  { 'items': { '$elemMatch': { 'itemName': 'Name 1' }}},
  { '$set': { 'items.$[item].itemName': 'New Name' }},
  { 'arrayFilter': [{ 'item.itemName': 'Name 1' }], 'multi': true }
)


  1. Úvahy o správě MongoDB

  2. jak vyprší platnost klíče mapy v REDIS?

  3. Ovladač Promise a nodejs MongoDB

  4. Existuje v Redis příkaz pro datovou strukturu HASH podobný MGET?