MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Jak usunąć dokument wewnątrz tablicy w mongodb za pomocą $pull

Możesz to zrobić za pomocą operatora pozycyjnego "$[]" :

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

ale schemat wygląda trochę dziwnie i po aktualizacji będziesz miał puste tablice wewnątrz przepływów pracy, jeśli wszystkie elementy zostaną usunięte z podtablicy. Aby naprawić puste podtablice, musisz wykonać drugą operację, aby je usunąć:

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


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Java, MongoDB:Jak zaktualizować każdy obiekt podczas iteracji ogromnej kolekcji?

  2. MongoDB:nie uwzględnia wielkości liter i akcentu

  3. Jak mogę użyć zmiennej regex w zapytaniu do MongoDB?

  4. Jak połączyć mongoDB z Pythonem?

  5. Zapowiedź ClusterControl 1.7.1:wsparcie dla PostgreSQL 11 i MongoDB 4.0, ulepszone monitorowanie