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

MongoDB कलेक्शन में सभी फ़ील्ड नाम कैसे प्राप्त करें?

MongoDB कलेक्शन में मौजूद सभी फ़ील्ड नाम प्राप्त करने के लिए Map-Reduce ऑपरेशन का उपयोग कर सकते हैं। यह तरीका तब उपयोगी होता है जब आपको डायनामिक रूप से फ़ील्ड नामों की सूची चाहिए।

उदाहरण

पहले एक कलेक्शन बनाएं और दस्तावेज़ डालें:

> db.getAllFieldNamesDemo.insertOne({"StudentFirstName":"David","StudentAge":23});
{ "acknowledged" : true, "insertedId" : ObjectId("5cd998e9b50a6c6dd317ad90") }

दस्तावेज़ देखने के लिए:

> db.getAllFieldNamesDemo.find();

आउटपुट:

{ "_id" : ObjectId("5cd998e9b50a6c6dd317ad90"), "StudentFirstName" : "David", "StudentAge" : 23 }

Map-Reduce से फ़ील्ड नाम प्राप्त करें

> myMapReduce = db.runCommand({
    "mapreduce" : "getAllFieldNamesDemo",
    "map" : function() {
      for (var myKey in this) { emit(myKey, null); }
    },
    "reduce" : function(myKey, s) { return null; },
    "out": "getAllFieldNamesDemo" + "_k"
  })
{
  "result" : "getAllFieldNamesDemo_k",
  "timeMillis" : 1375,
  "counts" : {
    "input" : 1,
    "emit" : 3,
    "reduce" : 0,
    "output" : 3
  },
  "ok" : 1
}
> db[myMapReduce.result].distinct("_id");

आउटपुट:

[ "StudentAge", "StudentFirstName", "_id" ]

नोट: MongoDB 4.4+ में आप $objectToArray और $unionWith एग्रीगेशन स्टेज का उपयोग करके भी यही परिणाम प्राप्त कर सकते हैं, जो अधिक कुशल है।

  1. - MongoDB कलेक्शन से यूनिक मान प्राप्त करें

    यूनिक मान प्राप्त करने और डुप्लिकेट को अनदेखा करने के लिए, MongoDB में distinct() का उपयोग करें। distinct() एक सिंगल कलेक्शन में निर्दिष्ट फील्ड के लिए विशिष्ट मान ढूंढता है और परिणाम को एक ऐरे में लौटाता है। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo704.insertOne({LanguageCode:hi});

  1. MongoDB संग्रह से सभी फील्ड नाम कुशलतापूर्वक पुनर्प्राप्त करें MongoDB संग्रह से सभी फील्ड नाम कुशलतापूर्वक पुनर्प्राप्त करें

    परिचय मूल रूप से 18 जनवरी, 2019 को ObjectRocket.com/blog पर प्रकाशित। अपने स्कीमा को मान्य करने के लिए, फील्ड में टाइपो डीबग करने के लिए, या उन फील्ड को ढूंढने के लिए जिन्हें आप सेट नहीं करना चाहिए, आपको अपने MongoDB® संग्रह में सभी कुंजियों की समझ की आवश्यकता है। ObjectRocket सहित कई MongoDB-as-a-

  1. अपने MongoDB कलेक्शन में सभी की नाम आसानी से प्राप्त करें अपने MongoDB कलेक्शन में सभी की नाम आसानी से प्राप्त करें

    अपने स्कीमा को मान्य करने, फील्ड्स में टाइपो डीबग करने, या उन फील्ड्स को ढूंढने के लिए जो सेट नहीं होने चाहिए, आपको अपने MongoDB कलेक्शन में सभी कीज़ की समझ प्राप्त करने की आवश्यकता होगी। MongoDB-as-a-service कंपनियों में से कई, ObjectRocket सहित, UI में सीधे ऐसा करने का एक आसान तरीका प्रदान करती ह