MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Грешка в Mongodb:Позиционният оператор не намери необходимото съвпадение от заявката

Трябва да включите полето за масив като част от документа на заявката, за да използвате positional operator .

Например, ако искате да актуализирате първия елемент от масива, т.е. с { "attributes.name": "x" } тогава можете да следвате модела:

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

За по-новите версии на MongoDB 3.2.X , можете да използвате updateMany() метод за актуализиране на множество документи в колекцията въз основа на филтъра по-горе.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Сортиране на ключове в Response Object от Mongoose в ExpressJS и NodeJS

  2. Вмъкване на голям масив от обекти в mongodb от nodejs

  3. Проблеми с MongoDB PHP UTF-8

  4. Как да сравня дати от данни на Twitter, съхранени в MongoDB чрез PyMongo?

  5. Обединете колекция Mongodb и Python Dict