Du vil måske bruge db.eval
hvis du er fast besluttet på at gøre dette på databasesiden.
Svar hentet fra et andet spørgsmål:
Det tror jeg ikke er muligt direkte; sortdokumentationen nævner bestemt ikke nogen måde at give en tilpasset sammenligningsfunktion på.
Du har det nok bedst med at udføre sorteringen i klienten, men hvis du virkelig er fast besluttet på at gøre det på serveren, kan du muligvis brugedb.eval()
at arrangere at køre sorteringen på serveren (hvis din klient understøtter det).
Sortering på serversiden:
db.eval(function() {
return db.scratch.find().toArray().sort(function(doc1, doc2) {
return doc1.a - doc2.a
})
});
Versus den tilsvarende sortering på klientsiden:
db.scratch.find().toArray().sort(function(doc1, doc2) {
return doc1.a - doc2.b
});