sql >> Base de Datos >  >> NoSQL >> MongoDB

MongoDB eliminarMuchos()

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.