Remover registros duplicados com MongoDB

0

Este é mais um daqueles posts simples de útilidade pública!

Vamos ver como remove registros duplicados com mongoDB

//remoção de duplicados

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

Apenas percorremos a coleção e removemos 1 registro apenas do retorno baseado naquela chave.

Um grande abraço!

Compartilhe.

Sobre o autor

Criador do blog Código Simples e com mais 9 anos de experiência em TI, com títulos de MVP Microsoft na área de Visual Studio Development, Neo4j Top 50 Certificate, Scrum Master e MongoDB Evangelist. Atuando em funções analista, desenvolvedor, arquiteto, líder técnico e gestor de equipes. Mais informações em : http://jhonathansoares.com