Um Duplikate in MongoDB zu entfernen, gibt es keine vorgefertigte Funktion wie in SQL-Datenbanken. Stattdessen können Sie ein Skript ausführen, das wie folgt aussieht:
```javascript
var duplicates = [];
db.collection.aggregate([
{ $group: {
_id: { field1: “$field1”, field2: “$field2” }, // replace field1, field2 with the actual field names
dups: { $addToSet: “$_id” },
count: { $sum: 1 }
}},
{ $match: {
count: { $gt: 1 }
}}
]).forEach(function(doc) {
doc.dups.shift(); // First element skip.
doc.dups.forEach( function(dupId){
duplicates.push(dupId); // Getting all duplicate ids
})
})
db.collection.remove({_id:{$in:duplicates}})
```
Ersetzen Sie “collection” durch den Namen Ihrer Kollektion und field1, field2 mit den tatsächlichen Feldnamen, die Sie vergleichen möchten.
Dieses Skript gruppiert zunächst alle Dokumente nach den angegebenen Feldern und zählt dann, wie viele Duplikate für jede Gruppe vorhanden sind. Daraufhin werden alle Duplikate in die `duplicates`-Liste aufgenommen und anschließend entfernt.
Bitte beachten Sie, dass das oben genannte Skript in einem größeren Dataset möglicherweise zu Speicherproblemen führen kann. Es ist immer besser, solche Operationen in einer sicheren, kontrollierten Umgebung durchzuführen und vor der Durchführung eine Sicherungskopie Ihrer Daten zu erstellen.