sql >> Database >  >> NoSQL >> MongoDB

Snelle manier om duplicaten te vinden op geïndexeerde kolom in mongodb

Persoonlijk vond ik dat op grote databases (1TB en meer) het geaccepteerde antwoord vreselijk traag is. Aggregatie gaat veel sneller. Voorbeeld staat hieronder:

db.places.aggregate(
    { $group : {_id : "$extra_info.id", total : { $sum : 1 } } },
    { $match : { total : { $gte : 2 } } },
    { $sort : {total : -1} },
    { $limit : 5 }
    );

Het zoekt naar documenten waarvan extra_info.id wordt twee keer of vaker gebruikt, sorteert resultaten in aflopende volgorde van gegeven veld en drukt de eerste 5 waarden ervan af.



  1. MongoDB uitvoeren met Ops Manager

  2. Hoe verbinding maken met een Redis-container met Docker Compose?

  3. Krijg alle sleutels in de Redis-database met python

  4. Foreman stopt per direct