MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

truy vấn phân biệt chữ hoa chữ thường trên mongodb

Giả sử bạn có tài liệu chứa thẻ tag và bạn muốn tìm kiếm trên đó

Tags
{
  tag,
  ...
 }

Tùy chọn đầu tiên là sử dụng regex (nhưng nó hoạt động chậm như @RestRisiko đã nói):

db.tags.find( { "tag" : { "$regex" : "C#", "$options" : "-i" } })

Tùy chọn thứ hai là tạo một trường khác, viết thường (và trong mongodb, đó là cách tốt nhất):

Tags
{
  tag,
  tagLower,
  ..
}

Và sử dụng find như thường lệ:

db.tags.find( { "tagLower" : "c#"})

Nó sẽ hoạt động nhanh hơn, vì mã trên có thể sử dụng chỉ mục để tìm kiếm.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB / Meteor:Thêm ID duy nhất cho mọi phần tử mảng

  2. Đã gặp cảnh báo MongoDB sau khi chuyển đổi tập hợp bản sao thành máy chủ độc lập

  3. Chạy db.repairDatabase () từ mongodb-native trong node.js

  4. Làm cách nào để lấy tài liệu đã xóa trong MongoDB?

  5. truy vấn mongo - tài sản có tồn tại không?