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

सरणी में मान नहीं रखने वाले फ़ील्ड के साथ MongoDB दस्तावेज़ों का मिलान करें?

<घंटा/>

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

> db.demo180.insertOne({"Scores":["80","90","110"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3988a69e4f06af551997fb")
}
> db.demo180.insertOne({"Scores":["110","70","60"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3988b79e4f06af551997fc")
}
> db.demo180.insertOne({"Scores":["40","70","1010"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3988cc9e4f06af551997fd")
}

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

> db.demo180.find();

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

{ "_id" : ObjectId("5e3988a69e4f06af551997fb"), "Scores" : [ "80", "90", "110" ] }
{ "_id" : ObjectId("5e3988b79e4f06af551997fc"), "Scores" : [ "110", "70", "60" ] }
{ "_id" : ObjectId("5e3988cc9e4f06af551997fd"), "Scores" : [ "40", "70", "1010" ] }

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

> db.demo180.aggregate({ "$match": { "Scores": { "$nin": ["110","90"] } } }).pretty();

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

{
   "_id" : ObjectId("5e3988cc9e4f06af551997fd"),
   "Scores" : [ "40", "70", "1010" ]
}

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

    आप $elemMatch का उपयोग कर सकते हैं। $elemMatch ऑपरेटर उन दस्तावेज़ों से मेल खाता है जिनमें कम से कम एक तत्व के साथ एक सरणी फ़ील्ड होता है जो सभी निर्दिष्ट क्वेरी मानदंडों से मेल खाता है। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo701.insertOne({"ListOfValues":[100,200,300]}); { &

  1. MongoDB में सभी मानों से मेल खाने के लिए एकत्रीकरण के साथ कार्य करना

    MongoDB में सभी मानों का मिलान करने के लिए, $match के साथ $ और एकत्रीकरण का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo574.insertOne( ...    { ...       "details1": { ...          "details2": { ...   &nbs

  1. एक सरणी फ़ील्ड वाले दस्तावेज़ों से मिलान करने के लिए MongoDB क्वेरी

    सरणी फ़ील्ड वाले दस्तावेज़ों का मिलान करने के लिए, $elemMatch ऑपरेटर का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - db.demo592.insertOne(... {... id:102,... विवरण:[... {नाम:क्रिस, मान:500}, ... {नाम:डेविड, वैल्यू:900}...]...}...);{ स्वीकृत:सच, सम्मिलित आईडी:ऑब्जेक्ट आईडी (5e930d90fd2d90c177