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

ऑब्जेक्ट को फ़िल्टर करने के लिए MongoDB क्वेरी जहां नेस्टेड सरणी के सभी तत्व स्थिति से मेल खाते हैं

<घंटा/>

इसके लिए एग्रीगेट () का इस्तेमाल करें। आइए पहले दस्तावेजों के साथ एक संग्रह बनाएं -

> db.demo418.insertOne(... {... "विवरण":[... {... "कंट्रीनाम":"यूएस", ... "मार्क्स":45...}, ... {... "देश का नाम":"अमेरिका",... "चिह्न":56...},...... ],... "नाम":"जॉन"...} ... );{ "स्वीकृत" :सच, "insertedId" :ObjectId("5e724324b912067e57771ae6")}> db.demo418.insertOne(... {... "विवरण":[... {... " देश का नाम":"अमेरिका",... "चिह्न":78...},... {... "देश का नाम":"यूके",... "चिह्न":97...},.. ....],... "नाम":"माइक"...}...);{ "स्वीकृत" :सच, "insertId" :ObjectId("5e724325b912067e57771ae7")}

संग्रह से सभी दस्तावेज़ों को खोजने () विधि की सहायता से प्रदर्शित करें -

> db.demo418.find();

यह निम्नलिखित आउटपुट देगा -

{ "_id" :ObjectId("5e724324b912067e57771ae6"), "details" :[{"CountryName" :"US", "Marks" :45 }, { "CountryName" :"US", "Marks" :56 } ], "नाम" :"जॉन" }{ "_id" :ObjectId ("5e724325b912067e57771ae7"), "विवरण" :[ { "देश का नाम" :"अमेरिका", "चिह्न" :78 }, { "देश का नाम" :" यूके", "मार्क्स" :97 } ], "नाम" :"माइक" }

ऑब्जेक्ट फ़िल्टर करने के लिए क्वेरी निम्नलिखित है जहां नेस्टेड सरणी के सभी तत्व शर्त से मेल खाते हैं -

> db.demo418.aggregate([... {$अनविंड:"$details"},... {$group:{... _id:'$_id',... विवरण :{ $first :'$details' },... alldetails:{ $sum:1 },... alldetailsmatch:{ $sum:{ $cond:[ {$eq:['$details.CountryName', "US" ] } , 1, 0 ] } },... नाम:{ $प्रथम:'$नाम' }... }},... {$परियोजना:{... _id:1,... नाम:1, ... विवरण:1,... arrayValue:{ $cond:[ {$eq:['$alldetails', '$alldetailsmatch' ] }, 1, 0 ] }...}},... { $ मैच:{'arrayValue':1 }}...])

यह निम्नलिखित आउटपुट देगा -

{ "_id" :ObjectId("5e724324b912067e57771ae6"), "details" :{ "CountryName" :"US", "Marks" :45 }, "Name" :"John", "arrayValue" :1 } 
  1. MongoDB क्वेरी उन दस्तावेज़ों से नामों की विशिष्ट सूची प्राप्त करने के लिए जहां फ़ील्ड का मान एक सरणी है

    इसके लिए $all का इस्तेमाल करें। $all ऑपरेटर उन दस्तावेज़ों का चयन करता है जहाँ किसी फ़ील्ड का मान एक सरणी है जिसमें सभी निर्दिष्ट तत्व होते हैं। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo642.insertOne( ...    { ...       _id:1, ...       ListOfNames:

  1. नेस्टेड सरणी को सॉर्ट करने के लिए MongoDB क्वेरी?

    MongoDB में नेस्टेड सरणी को सॉर्ट करने के लिए, $sort का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo505.insertOne( ... { ...    "details": [ ...    { ...       Name:"Chris", ...       "Score":58 ... &

  1. एक MySQL क्वेरी में एक सरणी के तत्वों का मिलान करें

    आइए पहले एक टेबल टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.76 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1523 मानों में डालें(1, 99);क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.10 सेकंड) चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें - DemoTable1523 से