Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Delete Documents

En esta guía, puedes aprender a utilizar el controlador Java Reactive Streams para borrar documentos de una colección de MongoDB realizando operaciones de borrado.

Una operación de eliminación elimina uno o más documentos de una colección de MongoDB. Puedes realizar una operación de eliminación usando los métodos deleteOne() o deleteMany().

Los ejemplos en esta guía utilizan la colección sample_restaurants.restaurants de los conjuntos de datos de muestra de Atlas.

Para aprender a crear un clúster gratuito de MongoDB Atlas y cargar los conjuntos de datos de muestra, consulte el tutorial Primeros pasos .

Importante

Proyecto Reactor librería

Esta guía usa la librería Proyecto Reactor para consumir instancias Publisher devueltas por los métodos del driver Reactive Streams de Java. Para obtener más información sobre la biblioteca Project Reactor y cómo utilizarla, consulta Primeros pasos en la documentación de Reactor. Para obtener más información sobre cómo utilizamos los métodos de la librería Project Reactor en esta guía, consulta la guía Guardar datos en MongoDB.

Puedes realizar operaciones de eliminación en MongoDB utilizando los siguientes métodos:

  • deleteOne()que elimina el primer documento que coincida con los criterios de búsqueda

  • deleteMany(), que borra todos los documentos que cumplen con los criterios de búsqueda

Cada método de borrado requiere un filtro de query, que especifica los criterios de búsqueda que determinan qué documentos seleccionar para borrar. Para obtener más información sobre los filtros de query, consulta la sección Documentos de filtros de query en el manual de MongoDB Server.

Para eliminar un solo documento de una colección de MongoDB, llama al método deleteOne() y pasa tu filtro de query. Luego, pasa el resultado deleteOne() al método estático Mono.from de Mono. Mono es una clase de la biblioteca Project Reactor. En Java Reactive Streams, los métodos del driver devuelven instancias Publisher frías, lo que significa que la operación correspondiente no ocurre a menos que te suscribas a la instancia de Publisher retornada. Esta guía utiliza la biblioteca Project Reactor para consumirlos. Para aprender más sobre Mono, consulta Mono en la documentación de Project Reactor.

El siguiente ejemplo elimina un documento de la colección restaurants que tiene un valor de name de "Ready Penny Inn":

Publisher<DeleteResult> deletePublisher = restaurants.deleteOne(
eq("name", "Ready Penny Inn"));
Mono.from(deletePublisher).block();

Para eliminar varios documentos de una colección de MongoDB, llama al método deleteMany() y pasa tu filtro de query. Luego, pasa el resultado deleteMany() al método estático Mono.from desde Mono. Mono es una clase de la librería Project Reactor. En Java Reactive Streams, los métodos del controlador devuelven instancias frías de Publisher, lo que significa que la operación correspondiente no se realiza a menos que te suscribas al Publisher devuelto. Esta guía utiliza la biblioteca Proyecto Reactor para consumirlos. Para obtener más información sobre Mono, consulta Mono en la documentación del Project Reactor.

El siguiente ejemplo remueve todos los documentos en la colección restaurants que tengan un valor borough de "Brooklyn":

Publisher<DeleteResult> deletePublisher = restaurants.deleteMany(
eq("borough", "Brooklyn"));
Mono.from(deletePublisher).block();

La clase DeleteOptions contiene métodos que modifican el comportamiento de los métodos de eliminación. Para usar la clase DeleteOptions, crea una nueva instancia de la clase y, a continuación, llama a uno o más de sus métodos para modificar la operación de eliminación. Puede encadenar estas llamadas de método juntas. Para modificar el comportamiento de la operación de borrar, pasa la instancia de la clase y las llamadas a métodos encadenadas como segundo argumento al método deleteOne() o deleteMany().

Puedes utilizar los siguientes métodos en la clase DeleteOptions para modificar un método de eliminación. Todos los métodos son opcionales.

Método
Descripción

collation (Collation collation)

Especifica el tipo de intercalación de lenguaje a usar al ordenar los resultados. Para obtener más información, consulte intercalación en el manual de MongoDB Server.

hint (Bson hint)

Obtiene o define el índice para escanear documentos. Para obtener más información, consulta la instrucción de sugerencia en el manual del MongoDB Server.

hint (String hint)

Obtiene o define el índice para escanear documentos. Para obtener más información, consulta la instrucción de sugerencia en el manual del MongoDB Server.

let (Bson variables)

Un mapa de nombres de parámetros y valores. Los valores deben ser constantes o expresiones cerradas que no hagan referencia a campos del document. Para más información, consulta la instrucción let en la documentación del MongoDB Server.

comment (BsonValue comment)

Un comentario que adjuntar a la operación. Para obtener más información, consulta la guía de campos de comando borrar en el manual del Servidor MongoDB para obtener más información.

comment (String comment)

Un comentario que adjuntar a la operación. Para obtener más información, consulta la guía de campos de comando borrar en el manual del Servidor MongoDB para obtener más información.

El siguiente código usa el método deleteMany() para borrar todos los documentos en la colección restaurants con un valor name que incluya la cadena "Mongo". También utiliza el método comment para añadir un comentario a la operación.

Publisher<DeleteResult> deletePublisher = restaurants.deleteMany(
regex("name", "Mongo"),
new DeleteOptions().comment("Deleting Mongo restaurants"));
Mono.from(deletePublisher).block();

Para ver ejemplos de código ejecutables sobre cómo insertar documentos con el controlador Java Reactive Streams, consulte la guía de operaciones CRUD.

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