日常需求,在Mongodb中存储的数据,发现有重复的,需要进行去重操作,可以直接写脚本遍历进行删除重复的,比较麻烦。
Mongodb的语法本来就是js类型的,直接可以写js的脚本来进行去重操作,下面给出一个示例:
```
db.third_party_price.aggregate([
{
$match: {s_date: 201902,source: ‘xxx’}
},
{
$group: { _id: {city: ‘$city’,region: ‘$region’,name: ‘$name’,s_date: ‘$s_date’,source: ‘$source’},count: {$sum: 1},dups: {$addToSet: ‘$_id’}}
},
{
$match: {count: {$gt: 1}}
}
]).forEach(function(doc){
doc.dups.shift();
db.third_party_price.remove({_id