sql >> Databasteknik >  >> NoSQL >> MongoDB

Mongoose sorterar det aggregerade resultatet

Resultaten som returneras från aggregeringspipelinen är bara vanliga objekt. Så du gör sorteringen som ett pipelinesteg, inte som en separat operation:

Recommend.aggregate(
    [
        // Grouping pipeline
        { "$group": { 
            "_id": '$roomId', 
            "recommendCount": { "$sum": 1 }
        }},
        // Sorting pipeline
        { "$sort": { "recommendCount": -1 } },
        // Optionally limit results
        { "$limit": 5 }
    ],
    function(err,result) {

       // Result is an array of documents
    }
);

Så det finns olika pipeline-operatörer som kan användas för att $group eller $sort eller $limit och andra saker också. Dessa kan presenteras i valfri ordning och så många gånger som krävs. Bara att förstå att ett "pipeline"-steg flödar över i nästa att agera på.




  1. Hämta BinData UUID från Mongo som sträng

  2. Redis-strängar vs Redis-haschar för att representera JSON:effektivitet?

  3. C#/.NET-klient för Redis

  4. Hur använder jag en guide i en mongodb-skalfråga