MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Wyszukiwanie tekstowe mongodb z wieloma polami

Powinieneś utworzyć indeks tekstowy w polach, które chcesz przeszukać:

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

Z dokumentacji operatora $text:

$text wykonuje wyszukiwanie tekstowe zawartości pól zindeksowanych indeksem tekstowym.

Indeks utworzony dla trzech pól jest indeksem złożonym, a nie indeksem tekstowym. Indeks tekstowy będzie wyglądał tak:

{
    "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. Monitorowanie i zarządzanie operacjami MongoDB 4.0 z ClusterControl

  2. Nowy sposób zarządzania bazami danych Open Source

  3. Wyodrębniona agregacja MongoDB

  4. Napraw „nazwa indeksu musi być ciągiem” podczas upuszczania wielu indeksów w MongoDB

  5. Utwórz aplikację do robienia notatek na Androida za pomocą MongoDB Stitch