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

नेस्टेड मोंगोडब दस्तावेज़ और समूह रखने में घटनाओं की गणना करें

आप नीचे एकत्रीकरण का उपयोग कर सकते हैं।

संयोजन के लिए गिनती प्राप्त करने के लिए प्रश्न और उत्तर दोनों के आधार पर समूह बनाएं और उत्तर प्राप्त करने के लिए समूह द्वारा प्रश्न और उसकी गणना करें।

db.getCollection('testAggregate').aggregate([
  {"$group":{
    "_id":{"question":"$question","answer":"$answer"},
    "count":{"$sum":1}
  }},
  {"$group":{
    "_id":"$_id.question",
    "answers":{"$push":{"answer":"$_id.answer","count":"$count"}}
  }}
]);

3.4 में मनचाहा प्रारूप प्राप्त करने के लिए आप नीचे दिए गए कोड का उपयोग कर सकते हैं।

बदलें $group k और v में कुंजियों के बाद $addFields $arrayToObject के साथ सरणी को नामित कुंजी मान जोड़े में बदलने के लिए।

db.getCollection('testAggregate').aggregate([
  {"$group":{
    "_id":{"question":"$question","answer":"$answer"},
    "count":{"$sum":1}
  }},
  {"$group":{
    "_id":"$_id.question",
    "answers":{"$push":{"k":"$_id.answer","v":"$count"}}
  }},
 {"$addFields":{"answers":{"$arrayToObject":"$answers"}}}
]);



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Node.js + mongoose 100 से अधिक परिणाम मिलने पर फ़्रीज़ नोड ढूंढते हैं

  2. $लुकअप एग्रीगेशन में $प्रोजेक्ट

  3. मोंगो - क्वेरी, एंबेडेड दस्तावेज़ डॉट नोटेशन को छोड़कर मेल नहीं खाता

  4. सरणी के भीतर नेस्टेड सरणी से आइटम को कैसे अपडेट करें

  5. MongoEngine अनुक्रमणिका (निर्माण, अद्यतन, निष्कासन) को कैसे संभालता है?