Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MongoDB

MongoDB में सबडॉक्यूमेंट्स के ऐरे को कैसे क्वेरी करें?

सबडॉक्यूमेंट्स के ऐरे को क्वेरी करने के लिए MongoDB में $unwind का उपयोग करें।

नमूना डेटा बनाना (सबडॉक्यूमेंट्स ऐरे)

> db.demo499.insertOne({
  "details": [
    { Name:"MIT", Rank: 1, "CountryName":"US" },
    { Name:"Stanford University", Rank: 2 },
    { Name:"University of California, Berkeley", Rank: 3 }
  ]
} );

सभी दस्तावेज़ देखना

> db.demo499.find();
{ "details" : [ { "Name" : "MIT", "Rank" : 1, "CountryName" : "US" }, { "Name" : "Stanford University", "Rank" : 2 }, { "Name" : "University of California, Berkeley", "Rank" : 3 } ] }

सबडॉक्यूमेंट्स ऐरे क्वेरी करने की क्वेरी (CountryName मौजूद हो)

> db.demo499.aggregate({$unwind: "$details"}, {$match: {"details.CountryName":{$exists: true}}}, {$project: {"details.Name": 1, "details.CountryName": 1, "_id": 0}})

परिणाम (केवल CountryName वाला सबडॉक्यूमेंट):

{ "details" : { "Name" : "MIT", "CountryName" : "US" } }

व्याख्या: $unwind details ऐरे को फ्लैट करता है। $match के साथ $exists: true केवल उन सबडॉक्यूमेंट्स को फ़िल्टर करता है जिनमें CountryName फील्ड मौजूद है। $project केवल Name और CountryName दिखाता है।

  1. - MongoDB में पोजिशनल $ ऑपरेटर का उपयोग करके सरणी में सब-आइटम सेट करना

    MongoDB में पोजिशनल $ ऑपरेटर: सरणी के मिलान वाले तत्व को अपडेट करना पोजिशनल $ ऑपरेटर क्वेरी शर्त से मेल खाने वाली सरणी में पहले तत्व की पहचान करता है और अपडेट ऑपरेशन में उस तत्व को संदर्भित करने की अनुमति देता है। यह सरणी के विशिष्ट तत्व को अपडेट करने के लिए महत्वपूर्ण है बिना उसकी सटीक इंडेक्स जाने

  1. - MongoDB क्वेरी: नेस्टेड ऐरे को एग्रीगेट करें

    MongoDB में नेस्टेड ऐरे को एग्रीगेट करने के लिए aggregate() का उपयोग करें। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: > db.demo441.insertOne( ...    { ... ...       "Name" : "David", ...       "Age" : 21, ... ...     &n

  1. - MongoDB में नेस्टेड सरणी को कैसे सॉर्ट करें?

    MongoDB में नेस्टेड सरणी को सॉर्ट करने के लिए, $sort का उपयोग करें। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: > db.demo505.insertOne( { details: [ { Name:Chris, Score:58 }, { Name:Bob, Score:45 }, { Name:John, Score:68 }, { Name:David, Score:46 } ] }); { ackn