Có, bạn có thể sử dụng regexp để thực hiện truy vấn không phân biệt chữ hoa chữ thường trong MongoDB. Cú pháp là asfollows:
db.yourCollectionName.find({"yourFieldName":/^yourvalue$/i}); Để hiểu cú pháp trên, chúng ta hãy tạo một bộ sưu tập với một số tài liệu. Truy vấn tạo một bộ sưu tập với các tài liệu như sau:
> db.caseInsensitiveDemo.insertOne({"Name":"John"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c6d7a67f2db199c1278e7ef")
}
> db.caseInsensitiveDemo.insertOne({"Name":"JOHN"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c6d7ad6f2db199c1278e7f0")
} Hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của find (). Truy vấn như sau:
> db.caseInsensitiveDemo.find();
Sau đây là kết quả:
{ "_id" : ObjectId("5c6d7a67f2db199c1278e7ef"), "Name" : "John" }
{ "_id" : ObjectId("5c6d7ad6f2db199c1278e7f0"), "Name" : "JOHN" } Đây là truy vấn để tạo truy vấn phân biệt chữ hoa chữ thường:
> db.caseInsensitiveDemo.find({"Name":/^john$/i}); Sau đây là kết quả:
{ "_id" : ObjectId("5c6d7a67f2db199c1278e7ef"), "Name" : "John" }
{ "_id" : ObjectId("5c6d7ad6f2db199c1278e7f0"), "Name" : "JOHN" }