[MongoDB]: dropDups to remove duplicate records

MongoDB dropDups option in Index creation will be useful to remove duplicate records that already exist in the collection.

> use foo

switched to db foo
>
>
>
> db.test.insert({ a:1 , b:1, c:1 })
WriteResult({ “nInserted” : 1 })
> db.test.insert({ a:1 , b:1, c:1 })
WriteResult({ “nInserted” : 1 })
> db.test.insert({ a:1 , b:1, c:1 })
WriteResult({ “nInserted” : 1 })
>
>
>
> db.test.find()
{ “_id” : ObjectId(“5527c7879689e4b8db19b9fb”), “a” : 1, “b” : 1, “c” : 1 }
{ “_id” : ObjectId(“5527c7889689e4b8db19b9fc”), “a” : 1, “b” : 1, “c” : 1 }
{ “_id” : ObjectId(“5527c78a9689e4b8db19b9fd”), “a” : 1, “b” : 1, “c” : 1 }
>
>
> show collections
system.indexes
test
>
> db.system.indexes.find()
{ “v” : 1, “key” : { “_id” : 1 }, “name” : “_id_”, “ns” : “foo.test” }
>
>
>
> db.test.ensureIndex( { a : 1 } , { unique : true , dropDups : true } )
{
“createdCollectionAutomatically” : false,
“numIndexesBefore” : 1,
“numIndexesAfter” : 2,
“ok” : 1
}
>
>
> db.test.find()
{ “_id” : ObjectId(“5527c7879689e4b8db19b9fb”), “a” : 1, “b” : 1, “c” : 1 }
>
>
> db.system.indexes.find()
{ “v” : 1, “key” : { “_id” : 1 }, “name” : “_id_”, “ns” : “foo.test” }
{ “v” : 1, “unique” : true, “key” : { “a” : 1 }, “name” : “a_1”, “ns” : “foo.test”, “dropDups” : true }
>
>

  • Ask Question