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

tìm kiếm văn bản mongodb với nhiều trường

Bạn nên tạo một chỉ mục văn bản trên các trường bạn muốn tìm kiếm:

db.deals.ensureIndex({ name: "text", description : "text", category : "text" });

Từ tài liệu của toán tử $ text:

$ text thực hiện tìm kiếm văn bản trên nội dung của các trường được lập chỉ mục với chỉ mục văn bản.

Chỉ mục bạn đã tạo cho ba trường của mình là chỉ mục kết hợp, không phải chỉ mục văn bản. Chỉ mục văn bản sẽ giống như sau:

{
    "v" : 1,
    "key" : {
        "_fts" : "text",
        "_ftsx" : 1
    },
    "name" : "name_text_description_text_category_text",
    "ns" : "test.deals",
    "weights" : {
        "category" : 1,
        "description" : 1,
        "name" : 1
    },
    "default_language" : "english",
    "language_override" : "language",
    "textIndexVersion" : 2
}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Xóa một đối tượng khỏi một mảng lồng nhau với $ pull và $ [số nhận dạng] (mongoDB 3.6)

  2. Làm điều gì đó nếu không tìm thấy gì với .find () mongoose

  3. Khi nào sử dụng GridFS trên MongoDB?

  4. MongoDB mongorestore và bộ sưu tập hiện có với các bản ghi

  5. MongoDB $ toInt