복붙노트

[MONGODB] 어떻게 총 수를 얻기 위해 MongoDB를에서 합계를 집계하는?

MONGODB

어떻게 총 수를 얻기 위해 MongoDB를에서 합계를 집계하는?

필드 {승리 : 번호} 일부 수집을 위해, 어떻게 컬렉션의 모든 문서에서 승리의 총 수를 얻기 위해 MongoDB를 집계 프레임 워크를 사용할 수?

5 승리 : 8 승리 : 나는 승 3 개 문서가있는 경우 25 : 12는 각각, 내가 사용할 수있는 방법 MongoDB를 집계 프레임 워크는 총 개수, 즉 전체를 반환합니다.

해결법

  1. ==============================

    1.MongoDB를의 집계 프레임 워크를 사용하여 그룹화 된 필드의 합계를 얻으려면, 당신은 $ 그룹과 $ 합계를 사용해야합니다 :

    MongoDB를의 집계 프레임 워크를 사용하여 그룹화 된 필드의 합계를 얻으려면, 당신은 $ 그룹과 $ 합계를 사용해야합니다 :

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

    당신은 승리의 모두의 합계를 얻으려면이 경우, 당신은 함께 그룹화 된 문서와 금액을에서 승리 필드의 값을 가져 $ 승리로 $ 구문을 사용하여 필드 이름을 참조 할 필요가있다.

    (당신이 당신의 코멘트에서 수행했던대로) 당신은 특정 값에 전달하여뿐만 아니라 다른 값을 요약 할 수 있습니다. 당신이 있다면

    { "$ 합계": 1}

    즉, 실제로 승리의 모두의 수보다는 총 될 것입니다.

  2. from https://stackoverflow.com/questions/17044587/how-to-aggregate-sum-in-mongodb-to-get-a-total-count by cc-by-sa and MIT license