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

MongoDB कुल $group . के साथ प्रतिशत प्राप्त करें

वैसे मुझे लगता है percentage स्ट्रिंग होना चाहिए यदि मान में % . है

सबसे पहले आपको count की आवश्यकता होगी दस्तावेज़ की संख्या।

var nums = db.collection.count();

db.collection.aggregate(
    [
        { "$group": { "_id": {"type":  "$type"}, "count": { "$sum": 1 }}},    
        { "$project": { 
            "count": 1, 
            "percentage": { 
                "$concat": [ { "$substr": [ { "$multiply": [ { "$divide": [ "$count", {"$literal": nums }] }, 100 ] }, 0,2 ] }, "", "%" ]}
            }
        }
    ]
)

परिणाम

{ "_id" : { "type" : "short" }, "count" : 3, "percentage" : "60%" }
{ "_id" : { "type" : "big" }, "count" : 2, "percentage" : "40%" }


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB:लोकेल ::पहलू ::_S_create_c_locale नाम मान्य नहीं है

  2. एकाधिक आबादी - mongoosejs

  3. रेडिस बनाम मोंगोडीबी

  4. शर्तों के साथ दो अतिरिक्त संग्रहों में कैसे शामिल हों

  5. बड़े संग्रह के लिए MongoDB में बल्क इंसर्ट प्रदर्शन