หากต้องการค้นหาหลายฟิลด์สำหรับหลายค่าใน 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 } ต่อไปนี้เป็นแบบสอบถามเพื่อแสดงเอกสารทั้งหมดจากคอลเลกชันโดยใช้วิธี find()
> 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" }