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

MongoDB क्वेरी अलग और गिनती का चयन करने के लिए?

<घंटा/>

आइए दस्तावेजों के साथ एक संग्रह बनाएं -

> db.demo586.insertOne(
...    {"details": [
...       {
...          "Name":"Chris",
...          "Marks":71
...       },
...       {
...          "Name":"Chris",
...          "Marks":61
...       },
...       {
...          "Name":"David",
...          "Marks":81
...       }
...  
...    ]
... }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e9200fefd2d90c177b5bcc7")
}
> db.demo586.insertOne(
... {"details": [
...    {
...       "Name":"Chris",
...       "Marks":71
...    },
...    {
...       "Name":"Carol",
...       "Marks":61
...    },
...    {
...       "Name":"David",
...       "Marks":81
...    }
...
... ]
... }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e9200fefd2d90c177b5bcc8")
}

संग्रह से सभी दस्तावेज़ों को खोजने () विधि की सहायता से प्रदर्शित करें -

> db.demo586.find();

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

{ "_id" : ObjectId("5e9200fefd2d90c177b5bcc7"), "details" : [
   { "Name" : "Chris", "Marks" : 71 },
   { "Name" : "Chris", "Marks" : 61 },
   { "Name" : "David", "Marks" : 81 }
] }
{ "_id" : ObjectId("5e9200fefd2d90c177b5bcc8"), "details" : [
   { "Name" : "Chris", "Marks" : 71 },
   { "Name" : "Carol", "Marks" : 61 },
   { "Name" : "David", "Marks" : 81 }
] }

विशिष्ट रूप से चयन करने और गिनने की क्वेरी निम्नलिखित है -

> var q= [
...    { "$unwind": "$details" },
...    {
...       "$group": {
...          "_id": {
...             "Name": "$details.Name",
...             "Marks": "$details.Marks"
...          },
...          "count": { "$sum": 1 }
...       }
...    },
...    {
...       "$group": {
...          "_id": "$_id.Name",
...          "distinctV": {
...             "$addToSet": {
...                "value": "$_id.Marks",
...                "numberOfValues": "$count"
...             }
...          }
...       }  
...    },
...    {
...       "$project": {
...          "_id": 0,
...          "Name": "$_id",
...          "distinctV": 1
...       }
...    }
... ];
> db.demo586.aggregate(q);

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

{ "distinctV" : [ { "value" : 61, "numberOfValues" : 1 } ], "Name" : "Carol" }
{ "distinctV" : [ { "value" : 71, "numberOfValues" : 2 }, { "value" : 61, "numberOfValues" : 1 } ], "Name" : "Chris" }
{ "distinctV" : [ { "value" : 81, "numberOfValues" : 2 } ], "Name" : "David" }

  1. MySQL DISTINCT का चयन करें और गिनें?

    इसे प्राप्त करने के लिए आपको MySQL से कुल फ़ंक्शन गिनती (*) के साथ GROUP BY कमांड का उपयोग करने की आवश्यकता है। वाक्य रचना इस प्रकार है: अपना कॉलमनाम चुनें, COUNT(*) किसी भी वैरिएबल नाम के रूप में अपने टेबलनाम ग्रुप से अपने कॉलमनाम द्वारा; उपरोक्त वाक्य रचना को समझने के लिए, आइए एक तालिका बनाते हैं

  1. अलग-अलग मान प्राप्त करें और उन्हें MySQL में गिनें

    अलग-अलग मान प्राप्त करने और उन्हें गिनने के लिए, आप ग्रुप बाय क्लॉज का उपयोग कर सकते हैं। वाक्य रचना इस प्रकार है अपने कॉलमनाम का चयन करें, अपने कॉलमनाम द्वारा अपने टेबलनाम समूह से किसी भी उपनाम के रूप में गिनें (*); उपरोक्त वाक्य रचना को समझने के लिए, आइए एक तालिका बनाते हैं। तालिका बनाने की क्वे

  1. MySQL क्वेरी आईडी द्वारा अलग क्रम का चयन करने के लिए

    इसके लिए ORDER BY MAX() का प्रयोग करें। आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.81 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल मानों में डालें (30, डेविड); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.11 सेकंड) चयन कथन का उपयोग करके तालिका से सभी रिकॉर्