MongoDB-এ ফুল টেক্সট সার্চ করতে টেক্সট ইন্ডেক্স এবং $text অপারেটর ব্যবহার করুন। একটি কালেকশন তৈরি করুন টেক্সট ইন্ডেক্সসহ:
> db.demo654.createIndex({Name:"text"});
{ "createdCollectionAutomatically" : true, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 }
> db.demo654.insertOne({"Name":"John Doe"});
{ "acknowledged" : true, "insertedId" : ObjectId("5ea04e924deddd72997713c8") }
> db.demo654.insertOne({"Name":"Chris Brown"});
{ "acknowledged" : true, "insertedId" : ObjectId("5ea04e9d4deddd72997713c9") }
> db.demo654.insertOne({"Name":"John Smith"});
{ "acknowledged" : true, "insertedId" : ObjectId("5ea04ea54deddd72997713ca") }
> db.demo654.insertOne({"Name":"David Miller"});
{ "acknowledged" : true, "insertedId" : ObjectId("5ea04eb24deddd72997713cb") }
find() দিয়ে ডকুমেন্ট দেখান:
> db.demo654.find();
আউটপুট:
"John" শব্দটি কন্টেইন করা ডকুমেন্ট ফুল টেক্সট সার্চ করুন:
> db.demo654.find({ $text: { $search: "John" } } );আউটপুট (রিলেভেন্স স্কোর অনুযায়ী সর্টেড):
ব্যাখ্যা:
createIndex({Name:"text"})টেক্সট ইন্ডেক্স তৈরি করে।$textও$searchফুল টেক্সট সার্চ করে, রিলেভেন্স স্কোর (textScore) অনুযায়ী সর্ট করে। একাধিক শব্দ স্পেস দিয়ে দিলে OR লজিকসহ সার্চ হয়। ফ্রেজ সার্চের জন্য কোটেশন ("John Doe") ব্যবহার করুন।