×

mongodb mongodb删除某字段重复数据

mongodb删除重复数据

mtsym mtsym 发表于2019-06-10 20:46:16 浏览4197 评论0

抢沙发发表评论

# 查询name字段重复数据
db.my_collection.aggregate([{'$group':{
                '_id':{'name':'$name'},
                'uniqueIds':{'$addToSet':'$_id'},
                'count':{'$sum':1}
            }},
            {'$match':{
                'count':{'$gt':1}
            }}],
            {allowDiskUse:true}
         )


# 删除重复数据
db.my_collection.aggregate([{'$group':{
                '_id':{'name':'$name'},
                'uniqueIds':{'$addToSet':'$_id'},
                'count':{'$sum':1}
            }},
            {'$match':{
                'count':{'$gt':1} 
            }}],
            {allowDiskUse:true}
          ).forEach(function(doc){
                doc.uniqueIds.shift();
                db.jp_lyrics.remove({_id: {$in: doc.uniqueIds}});
        });

群贤毕至

访客