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

सरणी में प्रत्येक मान की घटना की गणना कैसे करें?

आप key . पर घुंघराले ब्रेसिज़ भूल गए हैं मान और आपको उस पंक्ति को , . के साथ समाप्त करने की आवश्यकता है ; . के बजाय ।

db.issues.group({
    key: {"comments.username":true},
    initial: {sum:0},
    reduce: function(doc, prev) {prev.sum +=1},
});

अपडेट करें

comments को समझने के बाद एक सरणी है...आपको aggregate का उपयोग करना होगा उसके लिए ताकि आप comments ' को 'अनविंड' कर सकें और फिर उस पर समूह बनाएं:

db.issues.aggregate(
    {$unwind: '$comments'},
    {$group: {_id: '$comments.username', sum: {$sum: 1}}}
);

प्रश्न में नमूना दस्तावेज़ के लिए, यह आउटपुट करता है:

{
  "result": [
    {
      "_id": "Brandon Black",
      "sum": 1
    },
    {
      "_id": "Nelson Elhage",
      "sum": 3
    }
  ],
  "ok": 1
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. आईडी सहित मोंगोडब संग्रह में सभी ऑब्जेक्ट्स को कैसे पुनर्प्राप्त करें?

  2. Mongodb (v2.4.0) $मिलान कुल दिनांक सीमा के साथ काम नहीं कर रहा है

  3. नेवला बहु अद्यतन

  4. MongoDB में GroupBy एकाधिक कॉलम

  5. टेस्ट्रून के लिए एज़्योर डेवॉप्स होस्ट पर मोंगोडब स्थापित करें