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

MongoDB क्वेरी: सबडॉक्यूमेंट की सरणी के भाग के रूप में _id सरणी में मौजूद डॉक्यूमेंट्स से मिलान करें


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

> db.demo568.insertOne({ _id: 101, details: [ {id : 101 }, { id:103 } ] }); { "acknowledged" : true, "insertedId" : 101 }

find() से सभी डॉक्यूमेंट्स देखें:

> db.demo568.find();

आउटपुट:

{ "_id" : 101, "details" : [ { "id" : 101 }, { "id" : 103 } ] }

दूसरा कलेक्शन बनाने के लिए क्वेरी:

> db.demo569.insertOne({ _id: 101, details: "John" }) { "acknowledged" : true, "insertedId" : 101 }
> db.demo569.insertOne({ _id: 102, details: "Chris" }) { "acknowledged" : true, "insertedId" : 102 }
> db.demo569.insertOne({ _id: 103, details: "David" }) { "acknowledged" : true, "insertedId" : 103 }

find() से सभी डॉक्यूमेंट्स देखें:

> db.demo569.find();

आउटपुट:

{ "_id" : 101, "details" : "John" } { "_id" : 102, "details" : "Chris" } { "_id" : 103, "details" : "David" }

सबडॉक्यूमेंट सरणी में मौजूद _id वाले डॉक्यूमेंट्स से मिलान करने के लिए क्वेरी:

> db.demo569.find({ '_id': { '$in': db.demo568.distinct('details.id', {'_id': 101}) }})

परिणाम:

{ "_id" : 101, "details" : "John" } { "_id" : 103, "details" : "David" }

  1. - MongoDB: ऐरे वैल्यूज के आधार पर दस्तावेजों को मैच करें जो विशिष्ट मान से अधिक हों

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

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

    इसके लिए, अपडेट के साथ $push का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo573.insertOne( { _id: 101, SearchInformation: [ { Site: Facebook.com, NumberOfHits: 100 }, { Site: Twitter.com, NumberOfHits: 300 } ] } ); { ac

  1. - MongoDB क्वेरी: ऐरे फील्ड वाले दस्तावेजों को मैच करें

    ऐरे फील्ड वाले दस्तावेजों को मैच करने के लिए, $elemMatch ऑपरेटर का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo592.insertOne({ id:101, details: [ { Name: Chris, Value: 200 }, { Name: David, Value: 800 } ] }); { acknowledged : true, insertedId : Ob