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

एग्रीगेशन के साथ MongoDB दस्तावेज़ों को आरोही क्रम में कैसे सॉर्ट करें?

MongoDB एग्रीगेशन में $sort का उपयोग करें। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं:

> db.demo652.insertOne({
    value:10,
    "details" : [{
        "ProductName" : "Product-1",
        "ProductQuantity" : 8,
        "ProductPrice" : 500
    }, {
        "ProductName" : "Product-2",
        "ProductQuantity" : 7,
        "ProductPrice" : 500
    }]
});
{ "acknowledged" : true, "insertedId" : ObjectId("5e9f0730e3c3cd0dcff36a62") }
> db.demo652.insertOne({
    value:5,
    "details" : [{
        "ProductName" : "Product-1",
        "ProductQuantity" : 8,
        "ProductPrice" : 500
    }, {
        "ProductName" : "Product-2",
        "ProductQuantity" : 7,
        "ProductPrice" : 500
    }]
});
{ "acknowledged" : true, "insertedId" : ObjectId("5e9f0740e3c3cd0dcff36a63") }

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

> db.demo652.find();

यह निम्न आउटपुट देगा:

{ "_id" : ObjectId("5e9f0730e3c3cd0dcff36a62"), "value" : 10, "details" : [ { "ProductName" : "Product-1", "ProductQuantity" : 8, "ProductPrice" : 500 }, { "ProductName" : "Product-2", "ProductQuantity" : 7, "ProductPrice" : 500 } ] }
{ "_id" : ObjectId("5e9f0740e3c3cd0dcff36a63"), "value" : 5, "details" : [ { "ProductName" : "Product-1", "ProductQuantity" : 8, "ProductPrice" : 500 }, { "ProductName" : "Product-2", "ProductQuantity" : 7, "ProductPrice" : 500 } ] }

आरोही क्रम में सॉर्ट करने की क्वेरी:

> db.demo652.aggregate([{
    "$unwind": "$details"
}, {
    "$match": {}
}, {
    "$group": {
        "ProductPrice": {
            "$first": "$value"
        },
        "details": {
            "$push": {
                "ProductName": "$details.ProductName"
            }
        },
        "_id": "$_id"
    }
}, {
    "$sort": {
        "ProductPrice": 1
    }
}, {
    "$project": {
        "_id": 0,
        "ProductPrice": 1,
        "details": 1
    }
}]).pretty()

यह निम्न आउटपुट देगा:

{ "ProductPrice" : 5, "details" : [ { "ProductName" : "Product-1" }, { "ProductName" : "Product-2" } ] }
{ "ProductPrice" : 10, "details" : [ { "ProductName" : "Product-1" }, { "ProductName" : "Product-2" } ] }
  1. - MongoDB में एग्रीगेशन का उपयोग करके सभी मानों को मैच करें

    MongoDB में सभी मानों को मैच करने के लिए, एग्रीगेशन में $match के साथ $and का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo574.insertOne({ details1: { details2: { dueDate: new ISODate(2020-01-10), Name: Chris, UserInformation: {

  1. - MongoDB में समान ID वाले दस्तावेज़ों के एलिमेंट्स को एग्रीगेट करना

    अलग-अलग दस्तावेज़ों में समान ID वाले एलिमेंट्स को ग्रुप करने के लिए MongoDB के $group एग्रीगेशन स्टेज का उपयोग करें। डेमो डेटा > db.demo602.insertOne({id:1,Name:Chris}); > db.demo602.insertOne({id:2,Name:David}); > db.demo602.insertOne({id:1,Name:Bob}); > db.demo602.insertOne({id:3,Name

  1. - MongoDB एग्रीगेशन में मल्टीपल फ़ील्ड्स द्वारा काउंट करना

    एक ही पाइपलाइन में कई फ़ील्ड्स पर काउंट करने के लिए $facet का उपयोग करें। डेमो डेटा db.demo721.insertOne({ details1: { id:101 }, details2: { id:101 }, details3: { id:101 } }); db.demo721.insertOne({ details1: { id:101 }, details2: { id:102 }, details3: { id:102 } }); क्वेरी