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

MongoDB में Array Items Group करके Similar Price Products Count करना

Array items group करने के लिए $group के साथ $sort का उपयोग करें।

Collection बनाना

> db.demo566.insertOne(
... {
...   "ProductInformation" : [
...     { "ProductName" : "Product-1", "ProductPrice" :100 },
...     { "ProductName" : "Product-2", "ProductPrice" :1100 },
...     { "ProductName" : "Product-3", "ProductPrice" :100 },
...     { "ProductName" : "Product-4", "ProductPrice" :1100 },
...     { "ProductName" : "Product-5", "ProductPrice" :100 }
...   ]
... }
... );
{ "acknowledged" : true, "insertedId" : ObjectId("5e908e2339cfeaaf0b97b57a") }

सभी Documents Display करना

> db.demo566.find();

Output:

{ "_id" : ObjectId("5e908e2339cfeaaf0b97b57a"), "ProductInformation" : [ { "ProductName" : "Product-1", "ProductPrice" : 100 }, { "ProductName" : "Product-2", "ProductPrice" : 1100 }, { "ProductName" : "Product-3", "ProductPrice" : 100 }, { "ProductName" : "Product-4", "ProductPrice" : 1100 }, { "ProductName" : "Product-5", "ProductPrice" : 100 } ] }

Array Items Group करने का Query

> db.demo566.aggregate([
... { "$unwind": "$ProductInformation" },
... { "$group": { "_id": "$ProductInformation.ProductPrice", "Value": { "$sum" : 1 } } },
... { "$sort": { "_id" :1 } }
... ])

Output:

{ "_id" : 100, "Value" : 3 }
{ "_id" : 1100, "Value" : 2 }

व्याख्या: $unwind array को flatten करता है (प्रत्येक element के लिए separate document)। फिर $group ने ProductPrice द्वारा group करके $sum: 1 से count किया। $sort ने price द्वारा ascending order में sort किया।

  1. - MongoDB में दो तारीखों के बीच और विशिष्ट मान के साथ डेटा प्राप्त करें। ग्रुप करके योग और गिनती प्राप्त करें?

    MongoDB में डेटा फ़िल्टर करने के लिए $match का उपयोग करें और दो तारीखों के बीच डेटा प्राप्त करने के लिए $gte और $lte ऑपरेटर्स का उपयोग करें। आइए एक कलेक्शन बनाते हैं जिसमें डॉक्यूमेंट्स हों: > db.demo560.insertOne({value1:40,value2:40,shippingDate:new ISODate(2020-02-26)}); { acknowledged : true

  1. - MongoDB में ID द्वारा सॉर्ट करें और आइटम्स को रिवर्स करें

    $natural ऑपरेटर दस्तावेजों को नेचुरल ऑर्डर (सम्मिलन क्रम) में लौटाता है। आइटम्स को रिवर्स करने के लिए $natural:-1 का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo710.insertOne({id:101,Name:Robert}); { acknowledged : true, insertedId : ObjectId(5ea83a855d33e20ed1097b7a) } >

  1. - MongoDB में ऐरे आइटम्स की गिनती करके नए फील्ड में प्रदर्शित करें

    दस्तावेज में ऐरे आइटम्स की संख्या गिनने के लिए, MongoDB में $size का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo703.insertOne({ListOfSubject:[MySQL,MongoDB]}); { acknowledged : true, insertedId : ObjectId(5ea6ebaf551299a9f98c93b4) } > db.demo703.insertOne({ListOfSubject: