Docs Menu
Docs Home
/ /

Eliminar un documento

Puede eliminar un documento de una colección llamando al eliminar_uno() método en un Collection instancia.

Pase un filtro de consulta al delete_one() método para encontrar el documento que desea eliminar de la colección. Si varios documentos coinciden con el filtro de consulta, MongoDB elimina el primero según su orden natural en la base de datos o según el orden de clasificación especificado en una instancia de DeleteOptions.

El delete_one() método devuelve un tipo DeleteResult. Este tipo contiene información sobre el resultado de la operación de eliminación, como el número total de documentos eliminados.

Para obtener más información sobre las operaciones de eliminación, consulte la Guía paraeliminar documentos.

Este ejemplo elimina un documento que coincide con un filtro de consulta de la colección restaurants en la base de datos sample_restaurants. El método delete_one() elimina el primer documento cuyo valor del campo name sea "Haagen-Dazs" y el del campo borough sea "Brooklyn".

Puede acceder a los documentos de la colección restaurants como instancias del tipo Document o como un tipo de dato personalizado. Para especificar qué tipo de dato representa los datos de la colección, sustituya el parámetro de tipo <T> en la línea resaltada por uno de los siguientes valores:

  • <Document>: Accede a documentos de la colección como documentos BSON

  • <Restaurant>:Accede a los documentos de colección como instancias de la estructura Restaurant, definida en la parte superior del código

Seleccione el Asynchronous o la pestaña Synchronous para ver el código correspondiente para cada entorno de ejecución:

use mongodb::{
bson::{ Document, doc },
Client,
Collection
};
use serde::{ Deserialize, Serialize };
#[derive(Serialize, Deserialize, Debug)]
struct Restaurant {
name: String,
borough: String,
}
#[tokio::main]
async fn main() -> mongodb::error::Result<()> {
let uri = "<connection string>";
let client = Client::with_uri_str(uri).await?;
// Replace <T> with the <Document> or <Restaurant> type parameter
let my_coll: Collection<T> = client
.database("sample_restaurants")
.collection("restaurants");
let filter =
doc! { "$and": [
doc! { "name": "Haagen-Dazs" },
doc! { "borough": "Brooklyn" }
]
};
let result = my_coll.delete_one(filter).await?;
println!("Deleted documents: {}", result.deleted_count);
Ok(())
}
Deleted documents: 1
use mongodb::{
bson::{ Document, doc },
sync::{ Client, Collection }
};
use serde::{ Deserialize, Serialize };
#[derive(Serialize, Deserialize, Debug)]
struct Restaurant {
name: String,
borough: String,
}
fn main() -> mongodb::error::Result<()> {
let uri = "<connection string>";
let client = Client::with_uri_str(uri)?;
// Replace <T> with the <Document> or <Restaurant> type parameter
let my_coll: Collection<T> = client
.database("sample_restaurants")
.collection("restaurants");
let filter =
doc! { "$and": [
doc! { "name": "Haagen-Dazs" },
doc! { "borough": "Brooklyn" }
]
};
let result = my_coll.delete_one(filter).run()?;
println!("Deleted documents: {}", result.deleted_count);
Ok(())
}
Deleted documents: 1

Volver

Reemplace uno