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

एक सरणी स्रोत का उपयोग करके मोंगोडब में सरणी सबसेट प्राप्त करें

आपको बस $filter . की जरूरत है सरणी और केवल उन उप-दस्तावेज़ों को रखें जहां मान आपके इनपुट सरणी का एक सबसेट है। ध्यान दें कि मान यहाँ एक तत्व सरणी है जहाँ तत्व एम्बेडेड फ़ील्ड है value ।

let fruits = ["apple","banana","coconut"];

db.collection.aggregate([
    { "$project": { 
        "Element": { 
            "$filter": { 
                "input": "$Element", 
                "as": "el", 
                "cond": { 
                    "$setIsSubset": [ [ "$$el.Value" ], fruits ] 
                 }
            }
        }
    }}
])

MongoDB 3.4* से शुरू करके आप $in . का उपयोग कर सकते हैं $project . में ऑपरेटर मंच।

db.collection.aggregate([
    { "$project": { 
        "Element": { 
            "$filter": { 
                "input": "$Element", 
                "as": "el", 
                "cond": { 
                    "$in": [ "$$el.Value", fruits ] 
                 }
            }
        }
    }}
])

*इस लेखन के समय के रूप में MongoDB का अप्रकाशित संस्करण




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. नेवला के माध्यम से आइटम को मोंगो सरणी में पुश करें

  2. मोंगोडीबी $acosh

  3. नेवला का उपयोग करके मोंगोडब में संग्रह के लिए समाप्ति समय निर्धारित करना

  4. मोंगो कमांड का उपयोग नहीं कर सकता, मैक पर कमांड नहीं मिला दिखाता है

  5. विंडोज़:रेल:स्थापित करने में त्रुटि bson_ext