Computer >> Máy Tính >  >> Lập trình >> MongoDB

Có thể thực hiện truy vấn không phân biệt chữ hoa chữ thường trong MongoDB không?

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" }