sql >> Database >  >> NoSQL >> MongoDB

Hoe vind je het rijnummer van een rij in een gesorteerde MongoDB-verzameling om het percentiel te berekenen?

Krijg totale telling door db.yourCollection.count()

Tel vervolgens records met een groter aantal met
db.yourCollection.find({$gte: value}).count()

Als totaal aantal =1000, tel voor groter of gelijk aan =950, dan heb je 950/1000 - top 95%

Maar als u uw verzameling vaak in de leesmodus gebruikt en zeldzaam in de schrijfmodus, raad ik aan om een ​​nieuwe tijdelijke verzameling te maken met MapReduce om records {_id:..., percent:...} te hebben



  1. Hoe gegevens te verkrijgen Mongo-gegevens met behulp van geaggregeerde MongoDB

  2. Mongoose:findOneAndUpdate retourneert geen bijgewerkt document

  3. Hoe slaat Trello gegevens op in MongoDB? (Collectie per bord?)

  4. Subdocumentarray retourneren via Meteor / Mongo