Создать индексMongoDB полнотекстового поиска
db.MyCollection.createIndex({'$**': 'text'}, {name: 'FullTextIndex'})
Поиск матча
db.MyCollection.find({$text: {$search: 'myWord'}}).count()
Результат 1. для которого подано значение "MyWord находится здесь"
Если я регулярный поиск выбранных полей, как показано ниже, я получаю две записи, одна запись имеет имя = "myWord здесь", а вторая запись имеет " MyWord «в детали, поданной как» то здесь и MyWord здесь "
db.getCollection('MyCollection').find({
"$or":[{"Name":/myWord/i}, {"Details":/myWord/i}]
}).sort({"Name": 1})
Как я могу воссоздать индекс, так что поиск во всех областях, как SQL, где любое поле, как% SearchText%
И, наконец, как я могу написать этот поисковый запрос в C# Driver
Update:
Я еще посмотрел на него. он находит все результаты, имеющие ключ поиска с префиксными и суффиксными пространствами, но не часть строки в слове.
Пример она возвращается запись для значения «Здравствуйте MyWord здесь», но не возвращает «HellomyWord»
Но в соответствии с этим документом, он должен поддерживать поиск по шаблону. https://docs.mongodb.com/v3.0/reference/operator/query/text/
Полностью текстовый поиск MongoDB не поддерживает подстановочные знаки. Если вы хотите использовать подстановочные знаки, используйте регулярное выражение. – Saleem
Регулярное выражение для каждого столбца коллекции? Все документы в моей коллекции не имеют такой же схемы. Каждый документ имел от 30 до 90 полей – HaBo