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

MongoDB एग्रीगेशन: सभी दस्तावेजों में विशिष्ट मानों की गिनती


इसके लिए MongoDB में aggregate() का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं:

> db.demo718.insertOne({
    "id":101,
    "details": {
        "OtherDetails": ["Chris", "Mike", "Sam"],
        "GroupName": ["Group-1"],
        "Info": []
    }
}); { "acknowledged" : true, "insertedId" : ObjectId("5eaae25843417811278f5880") }

> db.demo718.insertOne({
    "id":102,
    "details": {
        "OtherDetails": ["Chris", "David"],
        "GroupName": ["Group-1"],
        "Info": []
    }
}); { "acknowledged" : true, "insertedId" : ObjectId("5eaae25943417811278f5881") }

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

> db.demo718.find();

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

{ "_id" : ObjectId("5eaae25843417811278f5880"), "id" : 101, "details" : { "OtherDetails" : [ "Chris", "Mike", "Sam" ], "GroupName" : [ "Group-1" ], "Info" : [ ] } }
{ "_id" : ObjectId("5eaae25943417811278f5881"), "id" : 102, "details" : { "OtherDetails" : [ "Chris", "David" ], "GroupName" : [ "Group-1" ], "Info" : [ ] } }

सभी दस्तावेजों में विशिष्ट मानों की गिनती करने के लिए क्वेरी:

> db.demo718.aggregate([
    { $unwind: "$details.GroupName" },
    { $match: { "details.GroupName": "Group-1" } },
    { $unwind: "$details.OtherDetails" },
    { $group: {
        _id: "$details.GroupName",
        OtherDetailsUnique: { $addToSet: "$details.OtherDetails" }
    }},
    { $project: {
        _id: 0,
        GROUP_NAME: "$_id",
        OtherDetailsUniqueCount: { $size: "$OtherDetailsUnique" }
    }}
])

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

{ "GROUP_NAME" : "Group-1", "OtherDetailsUniqueCount" : 4 }

  1. - MongoDB क्वेरी: फील्ड मानों में "@email" जैसे स्ट्रिंग की खोज करें

    MongoDB find() का उपयोग करके ईमेल स्ट्रिंग खोजें। आइए एक कलेक्शन बनाते हैं: > db.demo727.insertOne({UserId:John@email.com}); { acknowledged : true, insertedId : ObjectId(5eab375f43417811278f5898) } > db.demo727.insertOne({UserId:John@yahoo.com}); { acknowledged : true, insertedId : ObjectId(5

  1. - MongoDB में विशिष्ट तत्वों के लिए अधिकतम मान कैसे प्राप्त करें?

    विशिष्ट तत्वों के लिए अधिकतम मान प्राप्त करने के लिए MongoDB aggregate() में $sort और $group का उपयोग करें। आइए एक कलेक्शन बनाते हैं: > db.demo750.insertOne({id:101,value:50}); { acknowledged : true, insertedId : ObjectId(5eae74b2a930c785c834e566) } > db.demo750.insertOne({id:102,value:40});

  1. - MySQL में CHAR_LENGTH() का उपयोग करके कॉलम के सभी मानों की वर्ण लंबाई प्राप्त करना

    MySQL में CHAR_LENGTH() फ़ंक्शन का उपयोग करके कॉलम के प्रत्येक मान की वर्ण संख्या (कैरेक्टर लंबाई) प्राप्त करें। सिंटैक्स SELECT CHAR_LENGTH(yourColumnName) FROM yourTableName; नोट: CHAR_LENGTH() वर्ण गिनता है, LENGTH() बाइट्स गिनता है। मल्टी-बाइट वर्णों (यूनिकोड, हिंदी, चीनी) के लिए CHAR_LENGTH(