ได้ คุณสามารถใช้ regexp เพื่อสร้างแบบสอบถามที่ไม่คำนึงถึงขนาดตัวพิมพ์ใน MongoDB ไวยากรณ์มีดังนี้:
db.yourCollectionName.find({"yourFieldName":/^yourvalue$/i}); เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างคอลเลกชันพร้อมเอกสารบางส่วน แบบสอบถามเพื่อสร้างคอลเลกชันที่มีเอกสารมีดังนี้:
> db.caseInsensitiveDemo.insertOne({"Name":"John"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c6d7a67f2db199c1278e7ef")
}
> db.caseInsensitiveDemo.insertOne({"Name":"JOHN"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c6d7ad6f2db199c1278e7f0")
} แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้ find() แบบสอบถามมีดังนี้:
> db.caseInsensitiveDemo.find();
ต่อไปนี้เป็นผลลัพธ์:
{ "_id" : ObjectId("5c6d7a67f2db199c1278e7ef"), "Name" : "John" }
{ "_id" : ObjectId("5c6d7ad6f2db199c1278e7f0"), "Name" : "JOHN" } นี่คือการสืบค้นเพื่อสร้างการสืบค้นที่ไม่คำนึงถึงขนาดตัวพิมพ์:
> db.caseInsensitiveDemo.find({"Name":/^john$/i}); ต่อไปนี้เป็นผลลัพธ์:
{ "_id" : ObjectId("5c6d7a67f2db199c1278e7ef"), "Name" : "John" }
{ "_id" : ObjectId("5c6d7ad6f2db199c1278e7f0"), "Name" : "JOHN" }