vy.*_*ham 2 javascript mongoose mongodb node.js
我在 MongoDB 中有一个集合,其中大约有(约 200k 条记录)。我的样本记录看起来像,
{
name:String,
slug:String,
metaDes:String,
content:String,
parentID:String,
thumbnail:String,
display:Boolean,
}
Run Code Online (Sandbox Code Playgroud)
我在集合中有很多重复的记录具有相同的slug
我想根据slug
是否有任何快速方法可以使用猫鼬(Nodejs)删除所有重复项来删除重复记录?谢谢!
删除集合中具有相同内容的重复记录slug
db.table.aggregate([
{
"$group": {
_id: {slug: "$slug"},
slugs: { $addToSet: "$_id" } ,
count: { $sum : 1 }
}
},
{
"$match": {
count: { "$gt": 1 }
}
}
]).forEach(function(doc) {
doc.slugs.shift();
db.table.remove({
_id: {$in: doc.slugs}
});
})Run Code Online (Sandbox Code Playgroud)
参考链接
| 归档时间: |
|
| 查看次数: |
3134 次 |
| 最近记录: |