MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Mongoose posortuj zagregowany wynik

Wyniki zwrócone z potoku agregacji są zwykłymi obiektami. Więc robisz sortowanie jako etap potoku, a nie jako oddzielną operację:

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
    }
);

Tak więc istnieją różne operatory potoku, których można użyć do $group lub $sort lub $limit i inne rzeczy. Można je prezentować w dowolnej kolejności i tyle razy, ile jest to wymagane. Samo zrozumienie, że jeden etap „rurociągu” przechodzi w następny, na którym należy działać.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Prawdopodobieństwo kolizji ObjectId i UUID w dużym systemie rozproszonym

  2. Podziel ciąg na tablicę podciągów lub znaków w MongoDB

  3. Jak używać mongodb z elektronem?

  4. Jak prawidłowo iterować przez duży plik json

  5. MongoDB $min Operator potoku agregacji