MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Hapus duplikat di MongoDB

Ya, dropDups hilang untuk selamanya. Tapi Anda pasti bisa mencapai tujuan Anda dengan sedikit usaha.

Anda harus terlebih dahulu menemukan semua baris duplikat dan kemudian menghapus semua kecuali terlebih dahulu.

db.dups.aggregate([{$group:{_id:"$contact_id", dups:{$push:"$_id"}, count: {$sum: 1}}},
{$match:{count: {$gt: 1}}}
]).forEach(function(doc){
  doc.dups.shift();
  db.dups.remove({_id : {$in: doc.dups}});
});

Seperti yang Anda lihat doc.dups.shift() akan menghapus _id terlebih dahulu dari larik lalu hapus semua dokumen dengan _id yang tersisa di larik dups.

script di atas akan menghapus semua dokumen duplikat.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Perbedaan antara count() dan find().count() di MongoDB

  2. ImportError:Tidak ada modul bernama objectid

  3. MongoDB $type Aggregation Pipeline Operator

  4. C# mongodb - cara memperbarui elemen array bersarang

  5. Pengantar Data Musim Semi MongoDB