Ini tidak mungkin pada MongoDB 3.4. Fitur ini telah diminta, tetapi belum diterapkan:
Perlu mekanisme konversi jenis untuk mengonversi antara string dan angka
Jadi satu-satunya cara untuk menyelesaikan masalah Anda adalah dengan melakukan penjumlahan totalAmount secara manual dalam javascript...
Sunting
Ini sekarang dimungkinkan di MongoDB 4.0 yang memperkenalkan operator untuk mengonversi dari satu jenis ke jenis lainnya, misalnya $toDouble
jadi pertanyaannya adalah:
db.collection.aggregate([
{
"$group": {
"_id": null,
"totalAmount": {
"$sum": {
"$toDouble": "$orderTotal.amount"
}
},
"count": {
"$sum": 1
}
}
}
])
Anda dapat mencobanya di sini:mongoplayground.net/p/4zJTPU912Es