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

मोंगोडब:प्रत्येक सरणी स्थिति के लिए पूर्णांकों की कुल सरणी

मुझे लगता है कि सरणी में विशिष्ट पदों तक पहुंचने वाले फ़ंक्शन को लिखने के लिए आपको इसके लिए मानचित्र को कम करने की आवश्यकता होगी। आप कुछ इस तरह की कोशिश कर सकते हैं:

मैपिंग फ़ंक्शन:

var M = function() { 
    emit( this.agent, { score : this.score, qv : this.qv } )
}

फ़ंक्शन कम करें:

var R = function(key, values) {
    var result = { score : [0, 0, 0], qv : [0, 0, 0, 0, 0] };
    values.forEach( function(value) {
        for ( var i = 0; i < value.score.length; i ++ ) {
            result.score[i] += parseInt(value.score[i]);
        }
        for ( var i = 0; i < value.qv.length; i ++ ) {
            result.qv[i] += parseInt(value.qv[i]);
        }
    });
    return result;     
}

फिर आप अपने संग्रह पर निम्न mapReduce फ़ंक्शन चला सकते हैं:

db.foo.mapReduce( M, R, { out : "resultCollection" } )

और यह आपको निम्नलिखित वांछित परिणाम देना चाहिए!

{
"_id" : "006",
"value" : {
    "score" : [2, 1, 0],
    "qv" : [ 3, 0, 3, 0, 2 ]
}
}
{
"_id" : "007",
"value" : {
    "score" : [ 1, 0, 0],
    "qv" : [ 1, 0, 1, 0, 0]
}

}




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoParseError:विकल्प useCreateIndex, useFindAndModify समर्थित नहीं हैं

  2. योग के साथ विशिष्ट मोंगो क्वेरी काम नहीं कर रहा है

  3. मैं mongodb के _id का उपयोग करके विशेष तिथि पर डाले गए मानों को पुनर्प्राप्त करना चाहता हूं

  4. MongoDB $replaceAll

  5. सास के लिए MongoDB में एकाधिक डेटाबेस