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

MongoDB में सिंपल क्वेरी का उपयोग करके दस्तावेज़ कैसे फ़िल्टर करें?

दस्तावेज़ फ़िल्टर करने के लिए $match का उपयोग करें। $match केवल उन दस्तावेज़ों को पास करता है जो निर्दिष्ट शर्त से मेल खाते हैं, अगले पाइपलाइन स्टेज के लिए।

नमूना डेटा बनाना

> db.demo629.insertOne( {
  "Subject": ["MySQL", "MongoDB"],
  "details": [ { Name:"Chris", "Marks":78 }, { Name:"David", "Marks":89 } ]
} );

दस्तावेज़ देखना

> db.demo629.find();
{ "Subject" : [ "MySQL", "MongoDB" ], "details" : [ { "Name" : "Chris", "Marks" : 78 }, { "Name" : "David", "Marks" : 89 } ] }

सिंपल क्वेरी से फ़िल्टर करने की एग्रीगेशन क्वेरी

> db.demo629.aggregate([
  {"$unwind": "$details"},
  {"$match": {"details.Name": 'Chris', "Subject": {"$in":["Java","MySQL","Python","C","C++"]}}},
  {"$project": {"details": 1, "_id": 0}}
]);

परिणाम:

{ "details" : { "Name" : "Chris", "Marks" : 78 } }

व्याख्या: $unwind details ऐरे को फ्लैट करता है, $match Name="Chris" और Subject सूची में मौजूद होने पर फ़िल्टर करता है, $project केवल details फील्ड दिखाता है (_id छुपाता है)।

  1. - MongoDB में एम्बेडेड दस्तावेजों को क्वेरी करें

    MongoDB में एम्बेडेड दस्तावेजों को क्वेरी करने के लिए, aggregate() का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo705.insertOne( { _id:101, Information: [ { StudentName:Chris, StudentAge:21 }, { StudentName:David, StudentAge:23 },

  1. - MongoDB में सब-डॉक्यूमेंट द्वारा सब-डॉक्यूमेंट्स फ़िल्टर करें

    इसके लिए, $unwind के साथ aggregate() का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo583.insert([ { details1: [ { details2: [ { isMarried: true, Name: Chris }, { isMarried: true, Name: Bob }

  1. - MongoDB में एम्बेडेड डॉक्यूमेंट की सरणी पर फ़िल्टर क्वेरी कैसे करें?

    इसके लिए MongoDB में aggregate() का उपयोग करें। आइए 3 स्तरों के नेस्टेड डॉक्यूमेंट्स के साथ एक कलेक्शन बनाते हैं: > db.demo736.insertOne( { _id: 101, details1: [ { details2: [ { details3: { Name: John } } ] } ] } ); { acknowledged : true, insertedId : 101 } > db.demo736.insertOne( { _id: 102,