En MongoDB el db.collection.deleteMany()
El método elimina todos los documentos que coinciden con el filter
de una colección. En otras palabras, los elimina.
La collection
part es el nombre de la colección de la que se van a eliminar los documentos.
Eliminar todos los documentos
En este ejemplo, borramos todos los documentos de una colección llamada employees
:
db.employees.deleteMany({})
Resultado:
{ "acknowledged" : true, "deletedCount" : 5 }
El resultado nos muestra que se eliminaron cinco documentos.
Eliminar documentos seleccionados
En este ejemplo, eliminamos solo algunos documentos.
Primero, completemos nuestra colección de empleados nuevamente:
db.employees.insertMany([
{ _id: 1, name: "Sandy", salary: 55000 },
{ _id: 2, name: "Sarah", salary: 128000 },
{ _id: 3, name: "Fritz", salary: 25000 },
{ _id: 4, name: "Chris", salary: 45000 },
{ _id: 5, name: "Beck", salary: 82000 }
])
Ahora, eliminemos a todos los empleados que ganan más de 80 000 al año.
db.employees.deleteMany({ "salary": { $gt: 80000 } })
Resultado:
{ "acknowledged" : true, "deletedCount" : 2 }
Esta vez solo se eliminaron dos documentos.
Echemos un vistazo a la colección.
db.employees.find()
Resultado:
{ "_id" : 1, "name" : "Sandy", "salary" : 55000 } { "_id" : 3, "name" : "Fritz", "salary" : 25000 } { "_id" : 4, "name" : "Chris", "salary" : 45000 }
Como era de esperar, los dos principales asalariados han dejado la empresa.
Eliminar un documento
Si necesita eliminar un documento específico, puede especificar el _id
del documento. value (o algún otro valor exclusivo de ese documento) para eliminar ese documento específico.
Entonces, si quisiéramos eliminar a Fritz de la colección anterior, podríamos especificar su _id
valor de 3
. Así:
db.employees.deleteMany({ "_id": 3 })
Resultado:
{ "acknowledged" : true, "deletedCount" : 1 }
Revisemos la colección nuevamente:
db.employees.find()
Resultado:
{ "_id" : 1, "name" : "Sandy", "salary" : 55000 } { "_id" : 4, "name" : "Chris", "salary" : 45000 }
Como era de esperar, Fritz ahora ha desaparecido.
Más información
db.collection.deleteMany()
El método también acepta parámetros opcionales como collation
, hint
y writeConcern
.
Consulte la documentación de MongoDB para obtener más información.