program tip

총 개수를 얻기 위해 MongoDB에서 합계를 집계하는 방법은 무엇입니까?

radiobox 2020. 12. 29. 06:56
반응형

총 개수를 얻기 위해 MongoDB에서 합계를 집계하는 방법은 무엇입니까?


필드가있는 일부 컬렉션의 { wins: Number }경우 MongoDB Aggregation Framework사용 하여 컬렉션의 모든 문서에서 총 승리 수를 얻으려면 어떻게해야합니까?

예:

내가 3 개 문서가있는 경우 wins: 5, wins: 8, wins: 12각각 어떻게, 즉 총 수를 반환하는 MongoDB를 집계 프레임 워크를 사용할 수 있습니다 total: 25.


합집합

MongoDB의 집계 프레임 워크를 사용할 때 그룹화 된 필드의 합계를 얻으려면 $group$sum다음 을 사용해야합니다 .

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

이 경우 모든의 합계를 얻으려면 그룹화 된 문서에서 필드 값을 가져 와서 합산 wins하는 $구문을 사용하여 필드 이름을 참조 해야합니다.$winswins

카운트

sum주석에서했던 것처럼 특정 값을 전달하여 다른 값을 사용할 수도 있습니다 . 만약 당신이

{ "$sum" : 1 },

이는 실제로 총계가 wins아닌 모든의 개수입니다 .

참조 URL : https://stackoverflow.com/questions/17044587/how-to-aggregate-sum-in-mongodb-to-get-a-total-count

반응형