Мне нужно найти способ сопоставления документа в многопользовательском индексе mongodb при заданных определенных критериях.
Я создал многопользовательский индекс следующим образом:
db.collection.createIndex({"description": "text", "address": "text"})
Используя следующий пример:
{
"description": "IT Services and Software Development",
"address": "Address 1"
},
{
"description": "Networking and Database solutions",
"address": "Address 56"
}
Когда мне дается ключевое слово описания поиска, такое как «программное обеспечение», и местоположение, такое как «Адрес 56», я бы хотел сопоставить только те документы, которые содержатслово software
в поле описания и Address 56
в поле адреса следующим образом:
$text: { $search: {"description": "software", "address": "Address 56"} }
Я могу, например, сделать следующее:
$text: { $search: "Software \"Address 56\"" }
Но есть некоторые комбинации, которые могут сломать это. Как правильно это сделать?