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

क्या MongoDB find() फंक्शन _id को टालकर डिस्प्ले कर सकता है?

MongoDB find() में प्रोजेक्शन का उपयोग करके _id फील्ड को बाहर करना

MongoDB में, find() मेथड का दूसरा आर्ग्युमेंट एक प्रोजेक्शन डॉक्यूमेंट स्वीकार करता है जो निर्दिष्ट करता है कि कौन से फील्ड्स शामिल या बाहर किए जाएं। { _id: 0 } सेट करके, आप परिणामों से _id फील्ड को दबा सकते हैं।

सिंटैक्स

db.yourCollectionName.find({}, { _id: 0 });

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

> db.excludeIdDemo.insertOne({"CustomerName":"Larry"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cd7f62c1a844af18acdffb9") }
> db.excludeIdDemo.insertOne({"CustomerName":"Chris"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cd7f6311a844af18acdffba") }
> db.excludeIdDemo.insertOne({"CustomerName":"Mike"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cd7f6351a844af18acdffbb") }
> db.excludeIdDemo.insertOne({"CustomerName":"Bob"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cd7f6381a844af18acdffbc") }

डिफ़ॉल्ट आउटपुट (with _id)

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

आउटपुट:

{ "_id" : ObjectId("5cd7f62c1a844af18acdffb9"), "CustomerName" : "Larry" }
{ "_id" : ObjectId("5cd7f6311a844af18acdffba"), "CustomerName" : "Chris" }
{ "_id" : ObjectId("5cd7f6351a844af18acdffbb"), "CustomerName" : "Mike" }
{ "_id" : ObjectId("5cd7f6381a844af18acdffbc"), "CustomerName" : "Bob" }

_id के बिना क्वेरी करना

> db.excludeIdDemo.find({}, { _id: 0 });

आउटपुट:

{ "CustomerName" : "Larry" }
{ "CustomerName" : "Chris" }
{ "CustomerName" : "Mike" }
{ "CustomerName" : "Bob" }

व्याख्या

  • पहला आर्ग्युमेंट {} - खाली फ़िल्टर (सभी डॉक्यूमेंट्स)।
  • दूसरा आर्ग्युमेंट { _id: 0 } - प्रोजेक्शन: _id को बाहर करें, अन्य सभी फील्ड्स शामिल करें।
  • आप अन्य फील्ड्स को भी बाहर कर सकते हैं: { _id: 0, secretField: 0 }।
  • आप फील्ड्स को शामिल भी कर सकते हैं: { _id: 0, CustomerName: 1 } (केवल CustomerName)।

महत्वपूर्ण नियम

  • आप एक ही प्रोजेक्शन में इन्क्लूजन (1) और एक्सक्लूजन (0) को मिश्रित नहीं कर सकते _id के अपवाद के साथ।
  • { _id: 0, name: 1 } मान्य है ( _id को बाहर करता है, name शामिल करता है)।
  • { name: 1, age: 0 } अमान्य है (इन्क्लूजन और एक्सक्लूजन मिश्रित)।

एग्रीगेशन में उपयोग

db.collection.aggregate([
  { $project: { _id: 0, CustomerName: 1 } }
]);
  1. क्रोम में जावास्क्रिप्ट फंक्शन डेफिनिशन? मैं इसे कैसे ढूंढूं? क्रोम में जावास्क्रिप्ट फंक्शन डेफिनिशन? मैं इसे कैसे ढूंढूं?

    गूगल क्रोम में जावास्क्रिप्ट फंक्शन डेफिनिशन ढूंढने के लिए, वेब ब्राउज़र खोलें और डेवलपर टूल्स तक पहुंचने के लिए F12 दबाएं।अब Ctrl + Shift + F दबाएंनियमित अभिव्यक्ति चेक करें जैसा कि नीचे दिखाया गया है:फंक्शन खोजें और बस।

  1. - MongoDB क्वेरी: _id को छोड़कर सभी फील्ड्स के मान प्रदर्शित करें

    आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo590.insert([ { Name: Chris, Age: 21 }, { Name: Bob, Age: 20 }, { Name: Sam, Age: 19 } ]); BulkWriteResult({ writeErrors: [], writeConcernErrors: [], nInserted: 3, nUpserted: 0, nMatched: 0, nModified: 0, nRemoved: 0, upserted: [] }

  1. - MongoDB 4 में दस्तावेजों को सॉर्ट करें और केवल एक फील्ड प्रदर्शित करें

    MongoDB 4 में दस्तावेजों को सॉर्ट करने के लिए sort() का उपयोग करें। केवल एक फील्ड दिखाने के लिए, जो सॉर्ट की गई है, उसे 1 पर सेट करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo611.insertOne({Name:Chris}); { acknowledged : true, insertedId : ObjectId(5e987110f6b89257f5584d83) } > d