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

MongoDB में एक एम्बेडेड सूची से किसी विशिष्ट मान से अधिक मान कैसे प्राप्त करें?


किसी विशिष्ट मान से अधिक मान प्राप्त करने के लिए, $gt का उपयोग ढूंढें() के साथ करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं -

> db.demo317.insertOne(
...    {'id':101,
...       'details':[{'Score':78,Name:"Chris"},
...          {'Score':88,Name:"David"}
...       ]
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50e69cf8647eb59e562060")
}
> db.demo317.insertOne(
...    {'id':102,
...    'details':[{'Score':90,Name:"Chris"},
...       {'Score':91,Name:"David"}
...       ]
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50e6adf8647eb59e562061")
}

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

> db.demo317.find();

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

{ "_id" : ObjectId("5e50e69cf8647eb59e562060"), "id" : 101, "details" : [ { "Score" : 78, "Name" : "Chris" }, { "Score" : 88, "Name" : "David" } ] }
{ "_id" : ObjectId("5e50e6adf8647eb59e562061"), "id" : 102, "details" : [ { "Score" : 90, "Name" : "Chris" }, { "Score" : 91, "Name" : "David" } ] }

89 से अधिक स्कोर रिकॉर्ड प्राप्त करने के लिए MongoDB में एम्बेडेड सूची पर $gt का उपयोग करने की क्वेरी निम्नलिखित है -

> db.demo317.find({"details.Score" :{"$gt": 89}});

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

{ "_id" : ObjectId("5e50e6adf8647eb59e562061"), "id" : 102, "details" : [ { "Score" : 90, "Name" : "Chris" }, { "Score" : 91, "Name" : "David" } ] }

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

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

  1. MongoDB दस्तावेज़ से विशिष्ट मान फ़िल्टर करें

    विशिष्ट मानों को फ़िल्टर करने के लिए, MongoDB में $filter का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo751.insertOne( ...    { ...       _id: 101, ...       details: [ ...          { Name: "Robert", id:1

  1. MySQL में अर्धविराम वाले मानों की सूची से विशिष्ट रिकॉर्ड कैसे खोजें?

    इसके लिए आप FIND_IN_SET() का इस्तेमाल कर सकते हैं। आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable(Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Value varchar(100));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (2.49 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल (मान) मानों में डालें (3;