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

भरे हुए नेस्टेड सरणी के साथ MongoDB दस्तावेज़ खोजें और दस्तावेज़ परिणाम को फिर से आकार दें

<घंटा/>

आइए पहले दस्तावेजों के साथ एक संग्रह बनाएं -

> db.demo187.insertOne(
...    {
...      "_id" : "101",
...      "Details" : [
...         { "Subject" : "MongoDB" },
...         { "Subject" : "MySQL" }
...      ]
...   }
...);
{ "acknowledged" : true, "insertedId" : "101" }
> db.demo187.insertOne(
...   {
...      "_id" : "102",
...      "Details" : [
...         { }
...      ]
...   }
...);
{ "acknowledged" : true, "insertedId" : "102" }
> db.demo187.insertOne(
...   {
...      "_id" : "103",
...      "Details" : [
...         { "Subject" : "MongoDB" },
...         { "Subject" : "MySQL" }
...      ]
...   }
...);
{ "acknowledged" : true, "insertedId" : "103" }

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

> db.demo187.find();

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

{ "_id" : "101", "Details" : [ { "Subject" : "MongoDB" }, { "Subject" : "MySQL" } ] }
{ "_id" : "102", "Details" : [ {  } ] }
{ "_id" : "103", "Details" : [ { "Subject" : "MongoDB" }, { "Subject" : "MySQL" } ] }

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

> db.demo187.aggregate([
...
...   {$unwind: '$Details'},
...
...   {$project: {Subject: '$Details.Subject'}},
...
...   {$match: {Subject: {$exists: true}}}
... ])

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

{ "_id" : "101", "Subject" : "MongoDB" }
{ "_id" : "101", "Subject" : "MySQL" }
{ "_id" : "103", "Subject" : "MongoDB" }
{ "_id" : "103", "Subject" : "MySQL" }

  1. मैं एक सरणी के भीतर मिलान की गई वस्तुओं की संख्या के आधार पर MongoDB में दस्तावेज़ कैसे ढूंढ सकता हूं?

    आइए एक उदाहरण देखें और दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo694.insertOne( ...    { ...       "details" : ...       [ ...          { ...             "Name" : "Chris"

  1. विशिष्ट प्रथम नाम और अंतिम नाम वाले दस्तावेज़ खोजने के लिए MongoDB क्वेरी

    विशिष्ट FirstName और LastName वाले दस्तावेज़ ढूँढ़ने के लिए, $ और साथ में $in का उपयोग करें। इसे MongoDB फाइंड () में लागू करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo692.insertOne({FirstName:"Chris","LastName":"Brown"}); {    "acknowledged&

  1. MongoDB के साथ विशिष्ट नेस्टेड दस्तावेज़ों के लिए वस्तुओं की एक सरणी पर पूछताछ?

    नेस्टेड दस्तावेज़ों के लिए ऑब्जेक्ट्स की एक सरणी पर क्वेरी करने के लिए, ढूंढें () का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo763.insertOne( ...    { ...       _id:1, ...       CountryName:"US", ...       "s