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

MongoDB में मल्टीपल क्राइटेरिया के साथ ऐरे में वैल्यू कैसे खोजें

MongoDB में ऐरे फील्ड पर मल्टीपल क्राइटेरिया (जैसे: मान -20 से बड़ा और 20 से छोटा) के साथ खोज के लिए $elemMatch के साथ $gt और $lt का उपयोग करें।

सिंटैक्स

db.yourCollectionName.find({yourFieldName: {$elemMatch: {$gt: yourNegativeValue, $lt: yourPositiveValue}}}).pretty();

उदाहरण से समझें

एक कलेक्शन बनाकर डॉक्यूमेंट इन्सर्ट करते हैं:

> db.findValueInArrayWithMultipleCriteriaDemo.insertOne({"StudentName": "Larry", "StudentMarks": [-150, 150]});
> db.findValueInArrayWithMultipleCriteriaDemo.insertOne({"StudentName": "Mike", "StudentMarks": [19]});

सभी डॉक्यूमेंट देखने के लिए:

> db.findValueInArrayWithMultipleCriteriaDemo.find().pretty();

आउटपुट:

{ "_id": ..., "StudentName": "Larry", "StudentMarks": [-150, 150] }
{ "_id": ..., "StudentName": "Mike", "StudentMarks": [19] }

अब ऐरे में ऐसी वैल्यू खोजें जो -20 से बड़ी और 20 से छोटी हो:

> db.findValueInArrayWithMultipleCriteriaDemo.find({StudentMarks: {$elemMatch: {$gt: -20, $lt: 20}}}).pretty();

आउटपुट:

लैरी के ऐरे में -150 और 150 हैं - दोनों शर्तें पूरी नहीं करते। माइक का 19 दोनों शर्तें पूरी करता है।

  1. - MongoDB में सरणी ऑब्जेक्ट के साथ सरणी तत्व के मान को बढ़ाएं

    सरणी ऑब्जेक्ट के मान को बढ़ाने के लिए, $inc का उपयोग करें। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: >db.demo506.insertOne({details:[{id:1,Quantity:4},{id:2,Quantity:3},{id:3,Quantity:2},{id:4,Quantity:7}]}); { acknowledged : true, insertedId : ObjectId(5e882ed6987b6e0e9d18f576) } find() मेथड की मद

  1. - MongoDB में ऑब्जेक्ट्स की सरणी के अंदर कई मिलान कैसे खोजें?

    इसके लिए, $and के साथ $regex का उपयोग करें। $and एक या अधिक एक्सप्रेशन की सरणी पर लॉजिकल AND ऑपरेशन करता है और उन दस्तावेज़ों को चुनता है जो सरणी में सभी एक्सप्रेशन को संतुष्ट करते हैं। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: > db.demo525.insertOne({details:[{Name:Chris,CountryName:US}]}); { ackn

  1. - MongoDB में Single Array Value को String से Replace करना

    Replace करने के लिए $set और positional $ operator का उपयोग करें। Collection बनाना > db.demo564.insertOne({StudentName:[Chris,David,Mike,Sam]}); { acknowledged : true, insertedId : ObjectId(5e90880a39cfeaaf0b97b576) } सभी Documents Display करना > db.demo564.find().pretty(); Output: { _id :