MongoDB Kopya Kayıtları Silme
MongoDB üzerinde zaman zaman oluşan kopya kayıt sorununu çözmek aslında çok basit. Satır satır mongo db üzerinde kayıtlar çiftlenmiş veya daha fazla kopyalanabiliyor. Bunları veritabanı üzerinden temizlemek için aşağıda ki kodları çalıştırmanız yeterli.
db.KoleksiyonAdi.aggregate([ { $group: { _id: { AlanAdi: "$KopyasiAranacakAlan"}, dups: { "$addToSet": "$_id" }, count: { "$sum": 1 } }}, { $match: { count: { "$gt": 1 } }} ], {allowDiskUse: true} ) .forEach(function(doc) { doc.dups.shift(); // Silinmeden önce ki ilk kaydı tutması için shift yapıyoruz db.collectionName.remove({_id : {$in: doc.dups }}); // Kopyaları Sil })
Bir yanıt yazın
Yorum yapabilmek için giriş yapmalısınız.