In MongoDB de db.collection.deleteMany()
methode verwijdert alle documenten die overeenkomen met het filter
uit een verzameling. Met andere woorden, het verwijdert ze.
De collection
deel is de naam van de collectie waaruit de documenten moeten worden verwijderd.
Verwijder alle documenten
In dit voorbeeld verwijderen we alle documenten uit een verzameling met de naam employees
:
db.employees.deleteMany({})
Resultaat:
{ "acknowledged" : true, "deletedCount" : 5 }
Het resultaat laat zien dat vijf documenten zijn verwijderd.
Verwijder geselecteerde documenten
In dit voorbeeld verwijderen we slechts enkele documenten.
Laten we eerst onze medewerkerscollectie opnieuw vullen:
db.employees.insertMany([
{ _id: 1, name: "Sandy", salary: 55000 },
{ _id: 2, name: "Sarah", salary: 128000 },
{ _id: 3, name: "Fritz", salary: 25000 },
{ _id: 4, name: "Chris", salary: 45000 },
{ _id: 5, name: "Beck", salary: 82000 }
])
Laten we nu alle werknemers verwijderen die meer dan 80.000 per jaar verdienen.
db.employees.deleteMany({ "salary": { $gt: 80000 } })
Resultaat:
{ "acknowledged" : true, "deletedCount" : 2 }
Deze keer zijn er slechts twee documenten verwijderd.
Laten we de collectie eens bekijken.
db.employees.find()
Resultaat:
{ "_id" : 1, "name" : "Sandy", "salary" : 55000 } { "_id" : 3, "name" : "Fritz", "salary" : 25000 } { "_id" : 4, "name" : "Chris", "salary" : 45000 }
Zoals verwacht hebben de twee topverdieners het bedrijf verlaten.
Eén document verwijderen
Als u een specifiek document moet verwijderen, kunt u de _id
. van het document opgeven waarde (of een andere waarde die uniek is voor dat document) om dat specifieke document te verwijderen.
Dus als we Fritz uit de bovenstaande verzameling willen verwijderen, kunnen we zijn _id
. specificeren waarde van 3
. Zoals dit:
db.employees.deleteMany({ "_id": 3 })
Resultaat:
{ "acknowledged" : true, "deletedCount" : 1 }
Laten we de collectie nog eens bekijken:
db.employees.find()
Resultaat:
{ "_id" : 1, "name" : "Sandy", "salary" : 55000 } { "_id" : 4, "name" : "Chris", "salary" : 45000 }
Zoals verwacht is Fritz nu verdwenen.
Meer informatie
De db.collection.deleteMany()
methode accepteert ook optionele parameters zoals collation
, hint
, en writeConcern
.
Zie de MongoDB-documentatie voor meer informatie.