MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

MongoDB कुल समय श्रृंखला

आप इस प्रकार एकत्र कर सकते हैं:

  • $match विशिष्ट तिथि के लिए दस्तावेज़।
  • $group का निर्माण करें और $project क्वेरी करने से पहले ऑब्जेक्ट।
  • $group $hour . द्वारा , सभी दस्तावेज़ प्रति घंटे प्रति मिनट एक सरणी में जमा करें। मिनट को दस्तावेज़ के भीतर कहीं रखें।
  • $project $setUnion . के रूप में एक चर दस्तावेज़ प्रति घंटे सभी दस्तावेजों में से।
  • $unwind दस्तावेज़।
  • $sort orders . द्वारा
  • $limit शीर्ष 10 दस्तावेज़ जिनकी हमें आवश्यकता है।

कोड:

var inputDate = new ISODate("2015-01-09T13:00:00Z");
var group = {};
var set = [];
for(var i=0;i<=60;i++){
    group[i] = {$push:{"doc":"$vals."+i,
                       "hour":"$_id.hour",
                       "min":{$literal:i}}};
    set.push("$"+i);
}
group["_id"] = {$hour:"$hour"};
var project = {"docs":{$setUnion:set}}

db.t.aggregate([
{$match:{"hour":{$lte:inputDate,$gte:inputDate}}},
{$group:group},
{$project:project},
{$unwind:"$docs"},
{$sort:{"docs.doc.orders":-1}},
{$limit:2},
{$project:{"_id":0,
           "hour":"$_id",
           "doc":"$docs.doc",
           "min":"$docs.min"}}
])



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB एकत्रीकरण को गति दें

  2. Linq के माध्यम से MongoDB में BsonExtraElements को कैसे क्वेरी करें

  3. प्रतिक्रिया ऐप में मोंगोडब से सरल कनेक्शन

  4. mongoDB:कैसे एक नेस्टेड तानाशाही में एक तानाशाही कुंजी के अस्तित्व की जांच करने के लिए?

  5. आबादी वाले दस्तावेज़ों से नेवला योग फ़ील्ड