Docs Menu
Docs Home
/ /

Delete Documents

En esta sección, mostramos cómo llamar a las operaciones de escritura para remover documentos de una colección en la base de datos MongoDB.

Si desea eliminar documentos existentes de una colección, puede utilizar deleteOne() Para eliminar un documento o deleteMany() para uno o más documentos. Estos métodos aceptan un documento de consulta que coincida con los documentos que desea eliminar.

Nota

Si su aplicación utiliza información sobre el documento eliminado después de la eliminación, puede utilizar el métodocollection.findOneAndDelete(), que tiene una interfaz similar a deleteOne() pero también devuelve el documento eliminado.

Puedes especificar el documento o documentos que se eliminarán mediante las operaciones de guardado deleteOne() o deleteMany() en un objeto JSON de la siguiente manera:

const doc = {
pageViews: {
$gt: 10,
$lt: 32768
}
};

Para borrar el primer documento coincidente utilizando el método deleteOne() o borrar todos los documentos coincidentes utilizando el método deleteMany(), pasa el documento como parámetro del método:

const deleteResult = await myColl.deleteOne(doc);
const deleteManyResult = await myColl.deleteMany(doc);

Puedes imprimir el número de documentos borrados por la Operación accediendo al campo deletedCount del resultado de cada una de las llamadas a los métodos anteriores de la siguiente manera:

console.dir(deleteResult.deletedCount);
console.dir(deleteManyResult.deletedCount);

Si la operación de borrado es exitosa, estas instrucciones imprimen la cantidad de documentos borrados por la operación asociada.

Nota

Configuración de ejemplo

Este ejemplo se conecta a una instancia de MongoDB mediante una URI de conexión. Para obtener más información sobre cómo conectarse a su instancia de MongoDB, consulte Guía de conexión a MongoDB. Este ejemplo también utiliza la movies colección de la sample_mflix base de datos incluida en los conjuntos de datos de ejemplo de Atlas. Puede cargarlos en su base de datos en la versión gratuita de MongoDB Atlas siguiendo la guía de introducción de MongoDB.

Nota

No hay características específicas de TypeScript

El siguiente ejemplo de código utiliza JavaScript. No hay características específicas de TypeScript del controlador que sean relevantes para este caso de uso.

El siguiente código es un archivo completo y autónomo que realiza una operación de borrado de uno:

1// Delete a document
2
3import { MongoClient } from "mongodb";
4
5// Replace the uri string with your MongoDB deployment's connection string
6const uri = "<connection string uri>";
7
8const client = new MongoClient(uri);
9
10async function run() {
11 try {
12 const database = client.db("sample_mflix");
13 const movies = database.collection("movies");
14
15 /* Delete the first document in the "movies" collection that matches
16 the specified query document */
17 const query = { title: "Annie Hall" };
18 const result = await movies.deleteOne(query);
19
20 /* Print a message that indicates whether the operation deleted a
21 document */
22 if (result.deletedCount === 1) {
23 console.log("Successfully deleted one document.");
24 } else {
25 console.log("No documents matched the query. Deleted 0 documents.");
26 }
27 } finally {
28 // Close the connection after the operation completes
29 await client.close();
30 }
31}
32// Run the program and print any thrown exceptions
33run().catch(console.dir);

Al ejecutar el ejemplo anterior, se produce el siguiente resultado:

Successfully deleted one document.

Si ejecutas el ejemplo más de una vez, el código produce la siguiente salida porque borraste el documento correspondiente en la primera ejecución:

No documents matched the query. Deleted 0 documents.

Nota

Configuración de ejemplo

Este ejemplo se conecta a una instancia de MongoDB con un URI de conexión. Para obtener más información sobre cómo realizar la conexión a la instancia de MongoDB, se debe consultar la guía Conexión a MongoDB. Este ejemplo también usa la colección movies en la base de datos sample_mflix incluida en los conjuntos de datos de muestra de Atlas. Se pueden cargar en la base de datos en el nivel gratuito de MongoDB Atlas siguiendo la guía de Introducción a MongoDB.

El siguiente código es un archivo completo y autónomo que realiza una operación de borrar muchos:

1// Delete multiple documents
2
3import { MongoClient } from "mongodb";
4
5// Replace the uri string with your MongoDB deployment's connection string.
6const uri = "<connection string uri>";
7
8const client = new MongoClient(uri);
9
10async function run() {
11 try {
12 const database = client.db("sample_mflix");
13 const movies = database.collection("movies");
14
15 /* Delete all documents that match the specified regular
16 expression in the title field from the "movies" collection */
17 const query = { title: { $regex: "Santa" } };
18 const result = await movies.deleteMany(query);
19
20 // Print the number of deleted documents
21 console.log("Deleted " + result.deletedCount + " documents");
22 } finally {
23 // Close the connection after the operation completes
24 await client.close();
25 }
26}
27// Run the program and print any thrown exceptions
28run().catch(console.dir);
1// Delete multiple documents
2
3import { MongoClient } from "mongodb";
4
5// Replace the uri string with your MongoDB deployment's connection string
6const uri = "<connection string uri>";
7
8const client = new MongoClient(uri);
9
10async function run() {
11 try {
12 const database = client.db("sample_mflix");
13 const movies = database.collection("movies");
14
15 /* Delete all documents that match the specified regular
16 expression in the title field from the "movies" collection */
17 const result = await movies.deleteMany({ title: { $regex: "Santa" } });
18
19 // Print the number of deleted documents
20 console.log("Deleted " + result.deletedCount + " documents");
21 } finally {
22 // Close the connection after the operation completes
23 await client.close();
24 }
25}
26// Run the program and print any thrown exceptions
27run().catch(console.dir);

Al ejecutar el ejemplo anterior por primera vez, se obtiene el siguiente resultado:

Deleted 19 documents

Si se ejecuta el ejemplo más de una vez, se verá el siguiente resultado porque se borraron los documentos coincidentes en la primera ejecución:

Deleted 0 documents

Para aprender más sobre cualquiera de los tipos o métodos discutidos en esta guía, consulta la siguiente documentación de la API:

Volver

Actualizar arreglos

En esta página