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

Chyba Mongodb:Poziční operátor nenašel požadovanou shodu z dotazu

Abyste mohli použít positional operator .

Pokud například chcete aktualizovat první prvek pole, tj. pomocí { "attributes.name": "x" } pak můžete postupovat podle vzoru:

db.spaces.update(
   { "attributes.name": "x" }, // <-- the array field must appear as part of the query document.
   { "$set": { "attributes.$.weight": 2 } },
   { "multi": true }
)

Pro novější verze MongoDB 3.2.X , můžete použít updateMany() způsob aktualizace více dokumentů v rámci kolekce na základě filtru výše.



  1. Aktualizace tečkového pole Mongodb

  2. MongoDB $project:Zachovat předchozí pole kanálu

  3. Server Mongo přijímá přihlašovací údaje ze shellu, ale ne z rozhraní Java/Scala

  4. Víceúrovňová hierarchie dat Ember s vloženými vždy