समस्या _id
. के साथ प्रतीत होती है आप $group के लिए उपयोग कर रहे हैं। आपको $day
. के आधार पर समूह बनाना चाहिए null
. के बजाय , यदि आप परिणामों को दिन के अनुसार समूहीकृत करना चाहते हैं। इसे आजमाएं:
PriceHourly.aggregate([
{ $match: { date: { $gt: start, $lt: end } } },
{ $group: { _id: "$day", price: { $avg: '$price' } } }
], function(err, results){
console.log(results);
});
उस ने कहा, आपको दस्तावेज़ में दिन और घंटे को अलग-अलग तत्वों के रूप में संग्रहीत करने की आवश्यकता नहीं है। यह बेमानी डेटा है। आप day
निकाल सकते हैं और hour
date
. से Date Aggregation
का इस्तेमाल करके एग्रीगेशन क्वेरी में फ़ील्ड
ऑपरेटरों।