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

MongoDB: $$ROOT पर $first ग्रुप एक्यूमुलेटर लागू करें


एक्यूमुलेटर्स वे ऑपरेटर हैं जो पाइपलाइन के माध्यम से दस्तावेजों के प्रोग्रेस के रूप में अपनी स्थिति बनाए रखते हैं।

$ROOT रूट दस्तावेज़ को संदर्भित करता है, यानी वर्तमान में एग्रीगेशन पाइपलाइन चरण में संसाधित होने वाला टॉप-लेवल दस्तावेज़।

आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं:

> db.demo582.insertOne({FirstName:"Chris",Age:21,createDate:new ISODate("2020-01-10")}); { "acknowledged" : true, "insertedId" : ObjectId("5e91ce41fd2d90c177b5bcbd") }
> db.demo582.insertOne({FirstName:"Chris",Age:21,createDate:new ISODate("2020-04-21")}); { "acknowledged" : true, "insertedId" : ObjectId("5e91ce4ffd2d90c177b5bcbe") }
> db.demo582.insertOne({FirstName:"Chris",Age:22,createDate:new ISODate("2020-02-11")}); { "acknowledged" : true, "insertedId" : ObjectId("5e91ce59fd2d90c177b5bcbf") }
> db.demo582.insertOne({FirstName:"Chris",Age:22,createDate:new ISODate("2020-01-12")}); { "acknowledged" : true, "insertedId" : ObjectId("5e91ce6efd2d90c177b5bcc0") }

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

> db.demo582.find();

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

{ "_id" : ObjectId("5e91ce41fd2d90c177b5bcbd"), "FirstName" : "Chris", "Age" : 21, "createDate" : ISODate("2020-01-10T00:00:00Z") }
{ "_id" : ObjectId("5e91ce4ffd2d90c177b5bcbe"), "FirstName" : "Chris", "Age" : 21, "createDate" : ISODate("2020-04-21T00:00:00Z") }
{ "_id" : ObjectId("5e91ce59fd2d90c177b5bcbf"), "FirstName" : "Chris", "Age" : 22, "createDate" : ISODate("2020-02-11T00:00:00Z") }
{ "_id" : ObjectId("5e91ce6efd2d90c177b5bcc0"), "FirstName" : "Chris", "Age" : 22, "createDate" : ISODate("2020-01-12T00:00:00Z") }

ग्रुप एक्यूमुलेटर ऑपरेटर लागू करने के लिए क्वेरी:

> db.demo582.aggregate([
    {
        "$group": {
            "_id": "$FirstName",
            "MaximumDate": { "$max": "$createDate" },
            "count": { "$sum": 1 },
            "details": { "$first": "$$ROOT" }
        }
    },
    {
        "$project": {
            "MaximumDate": 1,
            "count": 1,
            "details": {
                "_id": "$_id",
                "FirstName": "$details.FirstName",
                "Age": "$details.Age"
            }
        }
    }
])

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

{ "_id" : "Chris", "MaximumDate" : ISODate("2020-04-21T00:00:00Z"), "count" : 4, "details" : { "_id" : "Chris", "FirstName" : "Chris", "Age" : 21 } }

  1. - JavaScript में टाइप कन्वर्जन में '+' ऑपरेटर का महत्व

    '+' ऑपरेटर के कई उपयोग हैं जिनमें जोड़, संयोजन, और सबसे महत्वपूर्ण टाइप कन्वर्जन शामिल है। आमतौर पर, हम जोड़ के लिए '+' ऑपरेटर का उपयोग करते हैं और कभी-कभी संयोजन के लिए। इसका टाइप कन्वर्जन में भी बहुत उपयोग है। स्ट्रिंग को नंबर में बदलना बहुत आसान है। उदाहरण <html> <body&g

  1. - जावास्क्रिप्ट में किसी संख्या का घनमूल कैसे खोजें?

    जावास्क्रिप्ट में Math ऑब्जेक्ट का उपयोग करके किसी भी प्रकार का ऑपरेशन किया जा सकता है। Math.cbrt() एक विशेष मेथड है जिसका उपयोग किसी संख्या का घनमूल खोजने के लिए किया जाता है। यह एक संख्या को पैरामीटर के रूप में लेता है और उसका घनमूल लौटाता है। सिंटैक्स Math.cbrt(64); यह एक संख्या को पैरामीटर के र

  1. जावास्क्रिप्ट का उपयोग करके <text> का मान निकालकर वेरिएबल में स्टोर करना जावास्क्रिप्ट का उपयोग करके <text> का मान निकालकर वेरिएबल में स्टोर करना

    <text> का मान निकालने के लिए, उपयोग करें -document.getElementById(yourTextIdValue).textContentउदाहरण  Document This is the JavaScript.... var originalText = document.getElementById(myText).textContent; console.log(originalText); उपरोक्त प्रोग्राम चलाने के लिए, बस फ़ाइल का न