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

Vkládání dat do vnořeného pole v mongodb

Nemůžete použít více $ positional, pro váš případ můžete použít single positional a arrayFilters,

Filtrovaný poziční operátor $[<identifier>] identifikuje prvky pole, které odpovídají podmínkám arrayFilters pro operaci aktualizace,

db.collection(TABLE).updateOne({
  list_id: 23,
  "cards.categories.category": "section01"
},
{
  $push: {
    "cards.$.categories.$[elem].tags": {
      name: "tag02",
      id: uuidv4(),
      is_selected: true
    }
  }
},
{
  arrayFilters: [
    { "elem.category": "section01" }
  ]
})

hřiště



  1. Jak převést pohled MongoDB na sbírku

  2. resque-scheduler selže při odebrání úlohy

  3. Do jaké úrovně blokuje MongoDB zápisy? (nebo:co to znamená na připojení

  4. Jak zrušit úlohu ve frontě v Laravel nebo Redis