इसे एकत्रीकरण ढांचे के साथ आज़माएं $match का इस्तेमाल करके और $group ऑपरेटरों, यानी कुछ इस तरह
db.tickets.aggregate([
{ $match: { time: {$gte: a, $lte: tomorrow} } },
{ $group: { _id: null, amount: { $sum: "$amount" } } }
])
उदाहरण के लिए इस तरह के परीक्षण डेटा के साथ
/* 1 */
{
"_id" : ObjectId("57e0ed40828913a99c2ceb46"),
"time" : 20,
"amount" : 40
}
/* 2 */
{
"_id" : ObjectId("57e0ed40828913a99c2ceb47"),
"time" : 40,
"amount" : 20
}
/* 3 */
{
"_id" : ObjectId("57e0ed40828913a99c2ceb48"),
"time" : 50,
"amount" : 10
}
/* 4 */
{
"_id" : ObjectId("57e0ed40828913a99c2ceb49"),
"time" : 10,
"amount" : 5
}
निम्नलिखित की तरह एक पाइपलाइन (डमी समय सीमा के साथ)
db.tickets.aggregate([
{ $match: { time: {$gte: 20, $lte: 40} } },
{ $group: { _id: null, amount: { $sum: "$amount" } } }
])
आपको इस तरह का परिणाम देगा
/* 1 */
{
"_id" : null,
"amount" : 60
}