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

MongoDB शेल में डॉक्यूमेंट वैल्यू कैसे प्रिंट करें?

MongoDB शेल में forEach() का उपयोग करके डॉक्यूमेंट फील्ड वैल्यू प्रिंट करना

MongoDB शेल में, आप कर्सर पर forEach() का उपयोग करके डॉक्यूमेंट्स पर पुनरावृति कर सकते हैं और विशिष्ट फील्ड वैल्यूज़ प्रिंट कर सकते हैं। यह स्क्रिप्टिंग, डीबगिंग, या फॉर्मेटेड आउटपुट उत्पन्न करने के लिए उपयोगी है।

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

> db.printDocuementValueDemo.insertOne({"InstructorName":"John Smith"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cd6804f7924bb85b3f48950") }
> db.printDocuementValueDemo.insertOne({"InstructorName":"Sam Williams"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cd680577924bb85b3f48951") }
> db.printDocuementValueDemo.insertOne({"InstructorName":"David Miller"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cd680637924bb85b3f48952") }

सभी डॉक्यूमेंट्स देखना

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

आउटपुट:

{ "_id" : ObjectId("5cd6804f7924bb85b3f48950"), "InstructorName" : "John Smith" }
{ "_id" : ObjectId("5cd680577924bb85b3f48951"), "InstructorName" : "Sam Williams" }
{ "_id" : ObjectId("5cd680637924bb85b3f48952"), "InstructorName" : "David Miller" }

विशिष्ट डॉक्यूमेंट के लिए फील्ड वैल्यू प्रिंट करना

> db.printDocuementValueDemo.find(
  { _id : ObjectId("5cd680577924bb85b3f48951") },
  { InstructorName: 1, _id: 0 }
).forEach(function(myDocument) {
  print(myDocument.InstructorName);
});

आउटपुट:

Sam Williams

व्याख्या

  • find(query, projection) - _id को छोड़कर केवल InstructorName फील्ड प्रोजेक्ट करता है।
  • forEach(function(doc) { ... }) - प्रत्येक मिलान करने वाले डॉक्यूमेंट पर पुनरावृति करता है।
  • print() - MongoDB शेल में कंसोल पर आउटपुट लिखता है।

सभी डॉक्यूमेंट्स के लिए सभी नाम प्रिंट करने का वैकल्पिक तरीका

> db.printDocuementValueDemo.find({}, { InstructorName: 1, _id: 0 })
  .forEach(doc => print(doc.InstructorName));

मुख्य बिंदु

  • नेटवर्क ट्रांसफर और प्रोसेसिंग को कम करने के लिए प्रोजेक्शन ({ field: 1, _id: 0 }) का उपयोग करें।
  • forEach() कर्सर पर काम करता है; बड़े परिणाम सेट के लिए, बैच प्रोसेसिंग पर विचार करें।
  • आधुनिक MongoDB शेल (mongosh) में, एरो फंक्शन्स (doc => ...) समर्थित हैं।
  1. - MongoDB में कैसे पता करें कि एलिमेंट दस्तावेज़ में मौजूद है?

    MongoDB दस्तावेज़ में एलिमेंट मौजूद है या नहीं जांचने के लिए MongoDB $exists का उपयोग करें। नमूना डेटा बनाना db.demo497.insertOne({details:[{}]}); सभी दस्तावेज़ देखना db.demo497.find(); { details : [ { Name : Chris }, { Name : Bob } ] } { details : [ { Name : Carol } ] } { details : [ { } ] } द

  1. - MongoDB में Document से Array Value Delete करना

    Array values delete करने के लिए MongoDB में $pull का उपयोग करें। $pull operator existing array से उन सभी instances को remove करता है जो specified condition से match करते हैं। Collection बनाना > db.demo535.insertOne( ... { ... studentId : 101, ... studentName : Chris, ... ListOfMailIds : [

  1. - MongoDB में NumberLong Value Print करना

    Mongo shell 64-bit integers को handle करने के लिए NumberLong() wrapper provide करता है। Custom variable का उपयोग करके syntax और toString() से print करना: var anyVariableName=NumberLong(yourLongNumber); yourVariableName.toString(); उदाहरण 1 > var number=NumberLong(231231231231121231); > number