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

मैं MongoDB में शब्दकोशों की एक सरणी को कैसे क्वेरी करूं?

आपको $elemMatch का उपयोग करना होगा यदि आप एम्बेडेड दस्तावेज़ के एकाधिक फ़ील्ड के साथ क्वेरी करना चाहते हैं तो सरणी में एम्बेडेड दस्तावेज़ों को क्वेरी करने के लिए। तो आपकी क्वेरी इस तरह होनी चाहिए:

db.collection.find( {
  "A": { $elemMatch: { name: "x", value: "1" } }
})

यदि आप ऐसे क्वेरी दस्तावेज़ चाहते हैं जिनमें (name:"x", value:"1") . हो या (name:"y", value:"2") उसी क्वेरी में, आप $or . का उपयोग कर सकते हैं इस तरह elemMatch के साथ:

db.collection.find( {
  $or: [
    { "A": { $elemMatch: { name: "x", value: "1" } } },
    { "A": { $elemMatch: { name: "y", value: "2" } } }
  ]  
})

यदि आप ऐसे क्वेरी दस्तावेज़ चाहते हैं जिनमें (name:"x", value:"1") . हो और (name:"y", value:"2") उसी क्वेरी में, आप $and . का उपयोग कर सकते हैं इस तरह elemMatch के साथ:

db.collection.find( {
  $and: [
    { "A": { $elemMatch: { name: "x", value: "1" } } },
    { "A": { $elemMatch: { name: "y", value: "2" } } }
  ]  
})


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. मोंगोडब एकत्रीकरण पंक्तियों को कॉलम

  2. PHP MongoDB मानचित्र db अभिकथन विफलता को कम करता है

  3. नेवला डेटाबेस में अंतिम दस प्रविष्टियाँ ढूँढता है

  4. मैपस्ट्रक्चर उत्पन्न वर्ग बच्चे के बजाय माता-पिता से लोम्बोक बिल्डर का उपयोग करता है

  5. MongoDB में स्ट्रिंग को ऐरे में कैसे बदलें?