sql >> Databáze >  >> NoSQL >> MongoDB

Jak agregovat součet v MongoDB, abyste získali celkový počet?

Součet

Chcete-li získat součet seskupeného pole při použití agregačního rámce MongoDB, budete muset použít $group a $sum :

db.characters.aggregate([ { 
    $group: { 
        _id: null, 
        total: { 
            $sum: "$wins" 
        } 
    } 
} ] )

V tomto případě, pokud chcete získat součet všech wins , musíte název pole použít pomocí $ syntaxe jako $wins který právě načte hodnoty wins pole ze seskupených dokumentů a sečte je dohromady.

Počet

Můžete sum další hodnoty také předáním konkrétní hodnoty (jak jste to udělali ve svém komentáři). Pokud jste měli

{ "$sum" : 1 } ,

to by byl ve skutečnosti počet všech wins , spíše než celkem.




  1. Redis přístup z MS Excel?

  2. Jak opravit svůj mongodb?

  3. Jak vyloučit jedno konkrétní pole z kolekce v Mongoose?

  4. 5 způsobů, jak vybrat řádky s maximální hodnotou pro jejich skupinu v SQL