sql >> Databasteknik >  >> NoSQL >> MongoDB

Uppdatera ett objekt i en array som finns i en array

Du måste använda denna (uppenbarligen likvärdiga) fråga:

db.mycollection.update({"sessions.0.issues": {$elemMatch: {id: <yourValue>}}}, {$set: {"sessions.0.issues.$.text": "newText"}})

Observera att ditt uppdateringsuttryck var korrekt.

Mer information om $elemMatch .

Btw, MongoDB-referens uttrycker att $-operatorn inte fungerar "med frågor som går igenom kapslade arrayer".

Viktigt :$elemMatch fungerar bara med version 4 eller mer.




  1. SCAN vs KEYS prestanda i Redis

  2. Kan jag ansluta direkt till en Redis-server från JavaScript som körs i en webbläsare?

  3. Anslut till värd mongodb från docker-container

  4. MongoDB 3 Java kontrollera om samlingen finns