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

MongoDB में एकाधिक मानों के लिए एकाधिक फ़ील्ड खोजें?

<घंटा/>

MongoDB में एकाधिक मानों के लिए एकाधिक फ़ील्ड खोजने के लिए, आप $text और $search ऑपरेटर का उपयोग कर सकते हैं। आइए पहले दस्तावेजों के साथ एक संग्रह बनाएं

>db.searchMultipleFieldsDemo.insertOne({"_id":100,"FirstSubject":"Java","SecondSubject":"MongoDB"});
{ "acknowledged" : true, "insertedId" : 100 }
>db.searchMultipleFieldsDemo.insertOne({"_id":101,"FirstSubject":"MongoDB","SecondSubject":"MySQL"});
{ "acknowledged" : true, "insertedId" : 101 }
>db.searchMultipleFieldsDemo.insertOne({"_id":102,"FirstSubject":"MySQL","SecondSubject":"Java"});
{ "acknowledged" : true, "insertedId" : 102 }

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

> db.searchMultipleFieldsDemo.find().pretty();

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

{ "_id" : 100, "FirstSubject" : "Java", "SecondSubject" : "MongoDB" }
{ "_id" : 101, "FirstSubject" : "MongoDB", "SecondSubject" : "MySQL" }
{ "_id" : 102, "FirstSubject" : "MySQL", "SecondSubject" : "Java" }

MongoDB में एकाधिक मानों के लिए एकाधिक फ़ील्ड खोजने के लिए क्वेरी निम्नलिखित है

> db.searchMultipleFieldsDemo.find({"$text":{"$search":"Java MongoDB"}});

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

{ "_id" : 102, "FirstSubject" : "MySQL", "SecondSubject" : "Java" }
{ "_id" : 100, "FirstSubject" : "Java", "SecondSubject" : "MongoDB" }
{ "_id" : 101, "FirstSubject" : "MongoDB", "SecondSubject" : "MySQL" }

  1. MongoDB एकत्रीकरण के साथ कई क्षेत्रों द्वारा गणना करें

    एकाधिक फ़ील्ड द्वारा गिनने के लिए, MongoDB में $facet का उपयोग करें। $facet इनपुट दस्तावेज़ों के एक ही सेट पर एक ही चरण में कई एकत्रीकरण पाइपलाइनों को संसाधित करता है। आइए दस्तावेजों के साथ एक संग्रह बनाएं - db.demo721.insertOne(... {...... details1:{... id:101......},. .. details2:{... id:102...},

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

    MongoDB खोज () का उपयोग करके ईमेल स्ट्रिंग खोजें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - db.demo727.insertOne({UserId:[email protected]});{ स्वीकृत :सच, insertId :ObjectId(5eab376143417811278f589a)} संग्रह से सभी दस्तावेज़ ढूंढें () विधि की सहायता से प्रदर्शित करें - db.demo727.find(); यह निम्नलि

  1. असंवेदनशील खोज के मामले में MongoDB $regex ऑपरेटर i या I

    इसके लिए आपको केस असंवेदनशील (i) का उपयोग करना होगा। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo759.insertOne({SubjectName:"MySQL"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5eb02ba95637cd592b2a4ae7") } > db.demo