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

MongoDB में सरणी फ़ील्ड के विशिष्ट मानों को एग्रीगेट कैसे करें?


सरणी फ़ील्ड पर विशिष्ट मान प्राप्त करना

किसी सरणी फ़ील्ड के सभी दस्तावेज़ों में विशिष्ट (Distinct) मान प्राप्त करने के लिए distinct() कमांड का उपयोग करें। यह फ़ील्ड पर इंडेक्स होने पर भी काम करता है।

उदाहरण: संग्रह बनाना

> db.distinctAggregation.insertOne({"UserName":"Larry","UserPost":["Hi","Hello"]}); 
{ "acknowledged" : true, "insertedId" : ObjectId("5c98aefb330fd0aa0d2fe4c6") }
> db.distinctAggregation.insertOne({"UserName":"Chris","UserPost":["Hi","Good Morning"]}); 
{ "acknowledged" : true, "insertedId" : ObjectId("5c98af0a330fd0aa0d2fe4c7") }
> db.distinctAggregation.insertOne({"UserName":"Robert","UserPost":["Awesome"]}); 
{ "acknowledged" : true, "insertedId" : ObjectId("5c98af1e330fd0aa0d2fe4c8") }

डेटा देखना

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

आउटपुट:


सरणी फ़ील्ड पर इंडेक्स बनाना (वैकल्पिक)

> db.distinctAggregation.ensureIndex({"UserPost":1}); 
{ "createdCollectionAutomatically" : false, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 }

विशिष्ट मान प्राप्त करना

> db.distinctAggregation.distinct("UserPost");

आउटपुट:

[ "Awesome", "Good Morning", "Hello", "Hi" ]

मुख्य बिंदु: distinct() कमांड स्वचालित रूप से सरणी को अनविंड (Unwind) करती है और सभी दस्तावेज़ों में उस फ़ील्ड के अद्वितीय मान लौटाती है। परिणाम डिफ़ॉल्ट रूप से क्रमबद्ध नहीं होते; क्रमबद्ध करने के लिए .sort() जोड़ें।

  1. - MongoDB में पॉपुलेटेड फ़ील्ड में सरणी स्लाइस करें?

    सरणी स्लाइस करने के लिए, MongoDB में $slice ऑपरेटर का उपयोग करें। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: > db.demo503.insertOne({_id:1,Name:John,Subject:[MySQL,Java,C]}); { acknowledged : true, insertedId : 1 } > db.demo503.insertOne({_id:2,Name:David,Subject:[MongoDB,C++,Python]}); { acknowl

  1. - MongoDB क्वेरी: एग्रीगेशन में ऐरे एलिमेंट का औसत प्राप्त करें

    ऐरे एलिमेंट्स का औसत प्राप्त करने के लिए, $avg का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo584.insertOne({Marks:[75,50,85,60,80]}); { acknowledged : true, insertedId : ObjectId(5e91d827fd2d90c177b5bcc2) } find() मेथड की मदद से कलेक्शन के सभी दस्तावेज प्रदर्शित करें: >

  1. - C++ में सरणी में विशिष्ट तत्वों की गिनती करें

    हमें किसी भी आकार की एक असॉर्टेड सरणी दी गई है जिसमें दोहराव वाले तत्व हैं और कार्य सरणी में विशिष्ट तत्वों की संख्या की गणना करना है। सरणी एक प्रकार की डेटा संरचना है जो एक ही प्रकार के तत्वों का एक निश्चित आकार का अनुक्रमिक संग्रह संग्रहीत कर सकती है। एक सरणी का उपयोग डेटा के संग्रह को संग्रहीत