MongoDB Supprimer les données

MongoDB Supprimer les données
Comme toute opération de base de données normale, vous rencontrerez des cas où vous devez supprimer les données d'une collection donnée. Heureusement, MongoDB nous fournit des commandes simples et intuitives pour accomplir de telles tâches.Dans cet article, nous discuterons de la façon de supprimer un ou plusieurs documents d'une collection MongoDB.

MongoDB Supprimer les documents

À l'aide de Mongo Shell, nous pouvons utiliser deux méthodes principales pour supprimer les documents d'une collection donnée. Ces méthodes sont les suivantes:

  1. db.collection.DeleteOne ()-vous permet de supprimer un seul document d'une collection basée sur un filtre spécifique.
  2. db.collection.DeleteMany () -Remues plusieurs documents d'une collection correspondant à un modèle spécifique.

Dans ce tutoriel, nous utiliserons l'ensemble de données Netflix fourni dans la ressource ci-dessous à des fins d'illustration.

https: // www.se gêner.com / ensembles de données / shivamb / netflix-shows

MongoDB DB.collection.DeleteOne ()

L'extrait ci-dessous montre la syntaxe de la méthode MongoDB DeleteOne ():

db.collection.DeleteOne (
,

WriteConcern: ,
collation: ,
indice:

)

La méthode deleteOne () supprimera le premier document qui correspond à la condition de filtre spécifiée.

Pour illustrer, supposons que nous souhaitions supprimer le document ci-dessous:


"_id": ObjectId ("631f41eaeecaffa1f860a597"),
"show_id": "s33",
"Type": "émission de télévision",
"Titre": "Sex Education",
"Cast": "Asa Butterfield, Gillian Anderson, Ncutigatwa, Emma Mackey, Connor Swindells, Kedar Williams-Stirling, Alistair Petrie",
"pays": "Royaume-Uni",
"Date_added": "17 septembre 2021",
"release_year": "2020",
"Note": "TV-MA",
"durée": "3 saisons",
"Listed_in": "émissions de télévision britanniques, émissions de télévision internationales, comédies télévisées",
"Description": "Insecure Otis a toutes les réponses en ce qui concerne les conseils sexuels, grâce à sa maman thérapeute. So Rebel Maeve propose une clinique de thérapie sexuelle scolaire.",
"directeur" :""

Nous pouvons utiliser la requête comme indiqué:

db.netflix.DeleteOne ("Title": "Sex Education");

La requête doit localiser le document avec le titre spécifié et le supprimer de la collection. La requête doit revenir:


"Reconnu": vrai,
"DeletedCount": 1.0

MongoDB DB.collection.Deletemany ()

Comme mentionné, la méthode deleteMany () vous permet de supprimer plus d'un document qui correspond à un filtre spécifique.

La syntaxe de la méthode est comme indiqué:

db.collection.Deletemany (
,

WriteConcern: ,
collation:

)

Par exemple, supposons que nous souhaitions supprimer tous les documents de type «film» de la collection Netflix.

Nous pouvons exécuter la commande comme indiqué:

db.netflix.DeleteMany ("type": "film")

En exécutant la requête ci-dessus, MongoDB scannera la collection et supprimera tout document de type «film».

La sortie résultante est comme indiqué:


"Reconnu": vrai,
"DeletedCount": 6131.0

Dans ce cas, nous pouvons voir que la requête supprime les documents 6131 de la collection.

MongoDB supprime tous les documents

Nous pouvons également utiliser la méthode DeleteMany () pour supprimer tous les documents dans une collection donnée en passant un filtre vide. Cela obligera MongoDB à correspondre à tous les documents de la collection et à les transmettre à la collection DeleteMany ().

Un exemple est comme indiqué:

db.netflix.DeleteMany ()

La commande doit renvoyer le nombre de documents supprimés comme:


"Reconnu": vrai,
"DeletedCount": 8806.0

Conclusion

Dans cet article, nous avons discuté de la façon d'utiliser les méthodes MongoDB DeleteOne () et DeleteMany () pour supprimer un ou plusieurs documents d'une collection donnée.