Excluir um documento
Você pode excluir um documento de uma coleção ligando para o métododelete_one() em uma Collection
instância.
Passe um filtro de query para o método delete_one()
para corresponder ao documento que você deseja excluir da coleção. Se vários documentos corresponderem ao filtro de query, o MongoDB excluirá o primeiro documento correspondente de acordo com sua ordem natural no banco de dados ou de acordo com a ordem de classificação especificada em um DeleteOptions instância.
O delete_one()
método retorna um DeleteResult tipo. Este tipo contém informações sobre o resultado da operação de exclusão, como o número total de documentos excluídos.
Para saber mais sobre as operações de exclusão, consulte o guia Excluir documentos .
Exemplo
Este exemplo exclui um documento que corresponde a uma query da collection restaurants
no reconhecimento de data center sample_restaurants
.
Este exemplo usa um filtro de query que corresponde a documentos nos quais o valor do campo name
é "Haagen-Dazs"
e o valor do campo borough
é "Brooklyn"
. O MongoDB exclui o primeiro documento que corresponde ao filtro de query.
Selecione a aba Asynchronous ou Synchronous para ver o código correspondente para cada tempo de execução:
use mongodb::{ bson::{ Document, doc }, Client, Collection }; async fn main() -> mongodb::error::Result<()> { let uri = "<connection string>"; let client = Client::with_uri_str(uri).await?; let my_coll: Collection<Document> = 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 } }; fn main() -> mongodb::error::Result<()> { let uri = "<connection string>"; let client = Client::with_uri_str(uri)?; let my_coll: Collection<Document> = 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