sql >> Database teknologi >  >> NoSQL >> MongoDB

MongoDB deleteMany()

I MongoDB er db.collection.deleteMany() metode fjerner alle dokumenter, der matcher filter fra en samling. Med andre ord, det sletter dem.

collection del er navnet på den samling, som dokumenterne skal fjernes fra.

Slet alle dokumenter

I dette eksempel sletter vi alle dokumenter fra en samling kaldet employees :

db.employees.deleteMany({})

Resultat:

{ "acknowledged" : true, "deletedCount" : 5 }

Resultatet viser os, at fem dokumenter blev fjernet.

Fjern valgte dokumenter

I dette eksempel fjerner vi kun nogle dokumenter.

Lad os først udfylde vores medarbejdersamling igen:

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 }
    ])

Lad os nu slette alle medarbejdere, der tjener mere end 80.000 om året.

db.employees.deleteMany({ "salary": { $gt: 80000 } })

Resultat:

{ "acknowledged" : true, "deletedCount" : 2 }

Denne gang blev kun to dokumenter slettet.

Lad os tage et kig på samlingen.

db.employees.find()

Resultat:

{ "_id" : 1, "name" : "Sandy", "salary" : 55000 }
{ "_id" : 3, "name" : "Fritz", "salary" : 25000 }
{ "_id" : 4, "name" : "Chris", "salary" : 45000 }

Som ventet har de to toplønnede forladt virksomheden.

Slet ét dokument

Hvis du har brug for at slette et bestemt dokument, kan du angive dokumentets _id værdi (eller en anden værdi, der er unik for det pågældende dokument) for at fjerne det specifikke dokument.

Så hvis vi ville slette Fritz fra ovenstående samling, kunne vi angive hans _id værdi af 3 . Sådan:

db.employees.deleteMany({ "_id": 3 })

Resultat:

{ "acknowledged" : true, "deletedCount" : 1 }

Lad os tjekke samlingen igen:

db.employees.find()

Resultat:

{ "_id" : 1, "name" : "Sandy", "salary" : 55000 }
{ "_id" : 4, "name" : "Chris", "salary" : 45000 }

Som forventet er Fritz nu forsvundet.

Flere oplysninger

db.collection.deleteMany() metode accepterer også valgfri parametre såsom collation , hint , og writeConcern .

Se MongoDB-dokumentationen for mere information.


  1. Unikt indeks i mongoose virker ikke

  2. Medbring dine egne Azure-konti – Hosting til MongoDB® &Redis™ hos ScaleGrid

  3. Hvordan fjerner man i mongoDb et array-element ved dets indeks?

  4. MongoDB på Ubuntu starter ikke som en tjeneste, intet i loggen