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

मैं किसी विशिष्ट फ़ील्ड के मान के आधार पर दस्तावेज़ों को सरणी में कैसे गिन सकता हूं?

<घंटा/>

ऐसे मैच और गिनती के लिए, MongoDB में $match का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं -

> db.demo726.insertOne(
...    {
...       id:101,
...       "details": [
...          {
...             Name:"Chris"
...
...          },
...          {
...             Name:"Chris"
...
...          },
...          {
...             Name:"Bob"
...          }
...       ]
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eab318643417811278f5894")
}

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

> db.demo726.find();

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

{ "_id" : ObjectId("5eab318643417811278f5894"), "id" : 101, "details" : [ { "Name" : "Chris" }, { "Name" : "Chris" }, { "Name" : "Bob" } ] }

MongoDB में एक विशिष्ट फ़ील्ड के मान के आधार पर एक सरणी में दस्तावेज़ों को गिनने के लिए क्वेरी निम्नलिखित है -

> db.demo726.aggregate([
...
...    { $unwind: '$details' },
...
...    { $match: { 'details.Name': "Chris"} },
...       { $group: {
...          _id: "$Name",
...          Total_Value: { $sum: 1 }
...       }
...    }
... ]);

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

{ "_id" : null, "Total_Value" : 2 }

  1. - MySQL में फ़ील्ड मान> 0 होने पर 1 से कैसे घटाएं?

    आप इसके लिए UPDATE कमांड के साथ CASE स्टेटमेंट का उपयोग कर सकते हैं। आइए पहले एक टेबल बनाएं - mysql> create table DemoTable (    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    Value int ); Query OK, 0 rows affected (1.44 sec) इंसर्ट कमांड का उपयोग करके टेबल में रिकॉर्ड डालें

  1. - MySQL वाले कॉलम में किसी विशिष्ट मान की गिनती कैसे प्राप्त करें?

    आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable (Id int, Name varchar(100));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (1.40 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल मानों में डालें (107, बॉब); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.18 सेकंड) चयन कथन का उपयोग करके तालिका से सभी र

  1. - MySQL में विशिष्ट मान वाले कॉलम की संख्या कैसे गिनें?

    निम्नलिखित वाक्य रचना है - सेलेक्टसम(आपका कॉलमनाम1+आपका कॉलमनाम2+आपका कॉलमनाम3...एन) `anyAliasName1` के रूप में, योग(आपका कॉलमनाम1 और आपका कॉलमनाम2 और आपका कॉलमनाम3….एन) आपके टेबलनाम से किसी भी उपनाम के रूप में; आइए एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (1.68 सेकंड) इंसर्ट कमांड की मद