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

मोंगोडीबी नक्शा ()

MongoDB में, cursor.map() विधि कर्सर द्वारा देखे गए प्रत्येक दस्तावेज़ पर एक फ़ंक्शन लागू करती है और एक सरणी में वापसी मानों को जोड़ती है।

सिंटैक्स

वाक्य रचना इस प्रकार है:

db.collection.find().map(<function>)

जहां collection उस संग्रह का नाम है जिसमें दस्तावेज़ रहते हैं।

और जहां <function> कर्सर द्वारा देखे गए प्रत्येक दस्तावेज़ पर लागू होने वाला कार्य है।

उदाहरण

मान लीजिए हमारे पास products . नामक संग्रह है जिसमें निम्नलिखित तीन दस्तावेज़ हैं:

{ "_id" : 1, "product" : "Left Handed Screwdriver" }
{ "_id" : 2, "product" : "Left Blinker" }
{ "_id" : 3, "product" : "Long Weight" }

हम map() . का उपयोग कर सकते हैं find() . के संयोजन में विधि प्रत्येक दस्तावेज़ में एक फ़ंक्शन लागू करते समय, उन दस्तावेज़ों के माध्यम से पुनरावृति करने की विधि।

उदाहरण:

db.products.find().map(
  function(p) {
    p = p.product.replace("Left","Right");
    return p;
  }
);

परिणाम:

[ "Right Handed Screwdriver", "Right Blinker", "Long Weight" ]

इस मामले में, हमने कर्सर के माध्यम से पुनरावृति की, और स्ट्रिंग के उदाहरणों को बदल दिया Left Right के साथ . हमने फिर परिणाम लौटा दिया।

परिणाम एक सरणी के रूप में लौटाया जाता है।

त्रुटि?

अगर आपको कोई त्रुटि मिलती है, तो इस तरह:

uncaught exception: TypeError: db.products.findOne(...).map is not a function :
@(shell):1:1

सुनिश्चित करें कि आप find() . का उपयोग कर रहे हैं और नहीं findOne()

findOne() विधि वास्तविक दस्तावेज़ लौटाती है, कर्सर नहीं। इसलिए, map() findOne() के साथ काम नहीं करेगा . इसके अलावा, भले ही इसने काम किया हो, findOne() केवल एक ही दस्तावेज़ लौटाता है, और इसलिए, एकाधिक दस्तावेज़ों के माध्यम से पुनरावृति करने की कोई आवश्यकता नहीं होगी।


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. अपवाद:BSON प्रकार EOO से दिनांक में कनवर्ट नहीं किया जा सकता

  2. MongoDB SSPL लाइसेंस परिवर्तन अद्यतन

  3. MongoDB के साथ यूनिट परीक्षण

  4. आवेदन में आग लगने वाले सभी प्रश्नों को लॉग करें

  5. ClusterControl सामुदायिक संस्करण के साथ मुक्त खुला स्रोत डेटाबेस परिनियोजन और निगरानी