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

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


आप इसके लिए $where ऑपरेटर का उपयोग कर सकते हैं। कॉन्सेप्ट समझने के लिए, एक दस्तावेज़ के साथ एक संग्रह बनाते हैं। दस्तावेज़ के साथ संग्रह बनाने की क्वेरी इस प्रकार है:

> db.queryInSameDocumentsDemo.insertOne({"StudentDetails":{"StudentName":"John"},"NewStudentDetails":{"StudentName":"Carol"}}); { "acknowledged" : true, "insertedId" : ObjectId("5c90096ed3c9d04998abf017") } > db.queryInSameDocumentsDemo.insertOne({"StudentDetails":{"StudentName":"Bob"},"NewStudentDetails":{"StudentName":"Bob"}}); { "acknowledged" : true, "insertedId" : ObjectId("5c900a435705caea966c5573") }

find() विधि की मदद से संग्रह से सभी दस्तावेज़ प्रदर्शित करें। क्वेरी इस प्रकार है:

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

आउटपुट निम्न है:

{ "_id" : ObjectId("5c90096ed3c9d04998abf017"), "StudentDetails" : { "StudentName" : "John" }, "NewStudentDetails" : { "StudentName" : "Carol" } } { "_id" : ObjectId("5c900a435705caea966c5573"), "StudentDetails" : { "StudentName" : "Bob" }, "NewStudentDetails" : { "StudentName" : "Bob" } }

केस 1 - यहाँ समान दस्तावेज़ में फ़ील्ड के साथ क्वेरी है। हमने यहाँ समानता (==) ऑपरेटर का उपयोग किया है। क्वेरी इस प्रकार है:

> db.queryInSameDocumentsDemo.find( { $where: "this.StudentDetails.StudentName == this.NewStudentDetails.StudentName" } ).pretty();

आउटपुट निम्न है:

{ "_id" : ObjectId("5c900a435705caea966c5573"), "StudentDetails" : { "StudentName" : "Bob" }, "NewStudentDetails" : { "StudentName" : "Bob" } }

केस 2 - यहाँ समान दस्तावेज़ में फ़ील्ड के साथ क्वेरी है। हमने नॉट इक्वल टू ऑपरेटर का उपयोग किया है।

क्वेरी इस प्रकार है:

> db.queryInSameDocumentsDemo.find( { $where: "this.StudentDetails.StudentName != this.NewStudentDetails.StudentName" } ).pretty();

आउटपुट निम्न है:

{ "_id" : ObjectId("5c90096ed3c9d04998abf017"), "StudentDetails" : { "StudentName" : "John" }, "NewStudentDetails" : { "StudentName" : "Carol" } }

  1. - MongoDB क्वेरी: एकाधिक फ़ील्ड के अस्तित्व की जांच करें

    एकाधिक फ़ील्ड के अस्तित्व की जांच के लिए $exists के साथ $and ऑपरेटर का उपयोग करें। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: > db.demo475.insertOne({"StudentFirstName":"Chris","StudentAge":23});{    "acknowledged" : true,    "inserte

  1. - MongoDB क्वेरी: नेस्टेड दस्तावेज अपडेट करें

    नेस्टेड दस्तावेज को अपडेट करने के लिए, update() का उपयोग करें और उसके भीतर डॉट नोटेशन का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo607.insertOne({ id:1, Info1: { Name: Chris, Age: 21, Info2: { SubjectName: MongoDB, Ma

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

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