sql >> Database teknologi >  >> NoSQL >> MongoDB

Find duplikerede poster i MongoDB

Brug aggregering på name og få name med count > 1 :

db.collection.aggregate([
    {"$group" : { "_id": "$name", "count": { "$sum": 1 } } },
    {"$match": {"_id" :{ "$ne" : null } , "count" : {"$gt": 1} } }, 
    {"$project": {"name" : "$_id", "_id" : 0} }
]);

Sådan sorteres resultaterne efter flest til mindst dubletter:

db.collection.aggregate([
    {"$group" : { "_id": "$name", "count": { "$sum": 1 } } },
    {"$match": {"_id" :{ "$ne" : null } , "count" : {"$gt": 1} } }, 
    {"$sort": {"count" : -1} },
    {"$project": {"name" : "$_id", "_id" : 0} }     
]);

For at bruge et andet kolonnenavn end "navn", skal du ændre "$name " til "$column_name "



  1. Sådan overvåger du dine databaseservere ved hjælp af ClusterControl CLI

  2. Mongoose underdokumenter vs indlejret skema

  3. MongoDB $setIntersection

  4. MongoDB E11000 duplikatnøglefejl