sql >> Database teknologi >  >> NoSQL >> MongoDB

Mongodb-fejl:Positionsoperatøren fandt ikke det nødvendige match fra forespørgslen

Du skal inkludere array-feltet som en del af forespørgselsdokumentet for at bruge positional operator .

For eksempel, hvis du vil opdatere det første array-element, dvs. med { "attributes.name": "x" } så kunne du følge mønsteret:

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

For de nyere MongoDB-versioner 3.2.X , kan du bruge updateMany() metode til at opdatere flere dokumenter i samlingen baseret på filteret ovenfor.



  1. Sådan initialiseres en samling i Dockerized Mongo DB

  2. Hvordan begrænser man antallet af underkolonne i MongoDB?

  3. Hvordan ville du modellere et venskabsforhold i MongoDB?

  4. Forsøger at slette en objektreference i MongoDB med mongoose på NodeJS