Jeg er ny til Mongodb og aggregeringsrammer, men overvejer svaret Tim B gav jeg kom op med dette:
db.coll.aggregate(
{ $project : {
"ranking" : {
"$divide" : ["$score", {"$subtract":[new Date(), "$updated"]}]
}
}
},
{ $sort : {"ranking" : 1}})
Brug af $project du kan omforme dokumenter for at indsætte forudberegnede værdier, i dit tilfælde rangeringsfeltet. Brug derefter $sort du kan sortere dokumenterne efter rangorden i den rækkefølge, du ønsker, ved at angive 1 for stigende eller -1 for faldende.
Jeg beklager den forfærdelige kodeformatering, jeg forsøgte at gøre den så læsbar som muligt.