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

MongoDB में ऐरे सामग्री में अंतर के अनुसार कैसे सॉर्ट करें?


अंतर के अनुसार सॉर्ट करने के लिए, MongoDB में aggregate() का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं −

> db.demo155.insertOne({"Scores":[{"Value":45},{"Value":50}]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e354584fdf09dd6d08539e3") } > db.demo155.insertOne({"Scores":[{"Value":60},{"Value":10}]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e35458efdf09dd6d08539e4") } > db.demo155.insertOne({"Scores":[{"Value":100},{"Value":95}]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e354599fdf09dd6d08539e5") }

find() मेथड की मदद से संग्रह से सभी दस्तावेजों को प्रदर्शित करें −

> db.demo155.find();

यह निम्नलिखित आउटपुट देगा −

{ "_id" : ObjectId("5e354584fdf09dd6d08539e3"), "Scores" : [ { "Value" : 45 }, { "Value" : 50 } ] } { "_id" : ObjectId("5e35458efdf09dd6d08539e4"), "Scores" : [ { "Value" : 60 }, { "Value" : 10 } ] } { "_id" : ObjectId("5e354599fdf09dd6d08539e5"), "Scores" : [ { "Value" : 100 }, { "Value" : 95 } ] }

MongoDB के साथ ऐरे सामग्री में अंतर के अनुसार सॉर्ट करने का क्वेरी निम्नलिखित है −

> db.demo155.aggregate([ ...    { "$match": { "Scores.1": { "$exists": true } } }, ...    { "$project": { ...       "Scores": "$Scores", ...       "sub": { ...          "$let": { ...             "vars": { ...                "f": { "$arrayElemAt": [ "$Scores", -2 ] }, ...                "l": { "$arrayElemAt": [ "$Scores", -1 ] } ...             }, ...             "in": { "$subtract": [ "$$l.Value", "$$f.Value" ] } ...          } ...       } ...    }}, ...    { "$sort": { "sub": -1 } } ... ])

यह निम्नलिखित आउटपुट देगा −

{ "_id" : ObjectId("5e354584fdf09dd6d08539e3"), "Scores" : [ { "Value" : 45 }, { "Value" : 50 } ], "sub" : 5 } { "_id" : ObjectId("5e354599fdf09dd6d08539e5"), "Scores" : [ { "Value" : 100 }, { "Value" : 95 } ], "sub" : -5 } { "_id" : ObjectId("5e35458efdf09dd6d08539e4"), "Scores" : [ { "Value" : 60 }, { "Value" : 10 } ], "sub" : -50 }

  1. - MongoDB में नेस्टेड सरणी को कैसे सॉर्ट करें?

    MongoDB में नेस्टेड सरणी को सॉर्ट करने के लिए, $sort का उपयोग करें। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: > db.demo505.insertOne( { details: [ { Name:Chris, Score:58 }, { Name:Bob, Score:45 }, { Name:John, Score:68 }, { Name:David, Score:46 } ] }); { ackn

  1. - MongoDB Array में Element Remove करना

    Element remove करने के लिए update में $pull का उपयोग करें। $pull operator existing array से उन सभी instances को remove करता है जो specified condition से match करते हैं। Collection बनाना db.demo541.insertOne({software:{services:[gmail,facebook,yahoo]}}); { acknowledged : true, insertedId : ObjectId(

  1. - C# में Array क्लास के Sort() मेथड का उपयोग कैसे करें

    Sort() मेथड संपूर्ण एक-आयामी सरणी में तत्वों को प्रत्येक तत्व के IComparable कार्यान्वयन का उपयोग करके क्रमबद्ध करता है। सरणी सेट करें। int[] list = { 22, 12, 65, 9}; सरणी को क्रमबद्ध करने के लिए Sort() मेथड का उपयोग करें। Array.Sort(list); निम्नलिखित उदाहरण Sort() मेथड के साथ काम करना सीखने के लिए