Nie jest to możliwe od MongoDB 3.4. Ta funkcja została już zgłoszona, ale nie została jeszcze zaimplementowana:
Potrzebujesz mechanizmu konwersji typu do konwersji między ciągami a liczbami
Jedynym sposobem rozwiązania problemu jest ręczne wykonanie sumy totalAmount w javascript...
Edytuj
Jest to teraz możliwe w MongoDB 4.0 który wprowadził operator do konwersji z jednego typu na inny, na przykład $toDouble
więc zapytanie będzie wyglądało następująco:
db.collection.aggregate([
{
"$group": {
"_id": null,
"totalAmount": {
"$sum": {
"$toDouble": "$orderTotal.amount"
}
},
"count": {
"$sum": 1
}
}
}
])
możesz spróbować tutaj:mongoplayground.net/p/4zJTPU912Es