Isso não é possível a partir do MongoDB 3.4. Este recurso já foi solicitado, mas ainda não foi implementado:
Precisa de um mecanismo de conversão de tipo para converter entre strings e números
Portanto, a única maneira de resolver seu problema é executar manualmente a soma totalAmount em javascript ...
Editar
Isso agora é possível no MongoDB 4.0 que introduziu o operador para converter de um tipo para outro, por exemplo
$toDouble
então a consulta seria:
db.collection.aggregate([
{
"$group": {
"_id": null,
"totalAmount": {
"$sum": {
"$toDouble": "$orderTotal.amount"
}
},
"count": {
"$sum": 1
}
}
}
])
você pode tentar aqui:mongoplayground.net/p/4zJTPU912Es