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

Как да премахнете документ в масив в mongodb с помощта на $pull

Можете да го направите с помощта на позиционния оператор "$[]" :

db.getCollection('workflows').update({_id: ObjectId("5ffef283f1f06ff8524aa2c2")  }, {$pull: {"workflows.$[]":{pName:"Test1"  } }  } )

но схемата изглежда малко странно и след актуализацията ще имате празни масиви в работните потоци, ако всички елементи са били изтрити в под-масива. За да коригирате празните под-масиви, ще трябва да извършите втора операция, за да ги премахнете:

db.getCollection('workflows').update({_id: ObjectId("5ffef283f1f06ff8524aa2c2")  }, {$pull: {"workflows":[]  } }   )


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Нарича се съхранена javascript функция от Mongoose?

  2. geoNear връща неправилно разстояние

  3. Драйверът на Mongo Java не се подчинява на ограничен метод

  4. Размито търсене с Mongodb?

  5. Ограничаване на размера на съхранение в MongoDB?