Como calcular uma média ponderada no mongoDB usando a estrutura de agregação?
Preciso calcular a média ponderada em um conjunto de documentos. Cada documento contém um peso e um valor em um campo separado. Aqui está um exemplo: Tenho 2 documentos a seguir representando uma transação de vendas.
{
quantity : 3,
price : 2
}
{
quantity : 9,
price : 6
}
Quero encontrar o preço médio para ambas as transações. Essa é uma média ponderada em que peso é a quantidade e valor é o preço. Isso pode ser calculado por
AveragePrice = (3 * 2 + 9 * 6 ) / (3 + 9)
.
Como executo esse cálculo usando a estrutura de agregação?