2010-10-02 2 views
2

Я хочу использовать полнотекстовый индекс для поиска слово:SQL Server полнотекстового поиска

Как я могу использовать «содержит» или «FREETEXT», чтобы получить тот же результат, как "like '%dd%' "? Если я использую contain(table,'data'), он находит только "....the data is ...." Как я могу использовать contain search 'dat', чтобы найти данные?

ответ

5

Хотя LIKE ищет шаблоны символов внутри строки, полный текстовый поиск SQL Server основан на словах. Индекс строится с использованием word breakers and stemmers, чтобы токенизировать текст в слова. Таким образом, вы можете искать целые слова или выполнять prefix searches (так что CONTAINS (YourColumn, ' "dat*" ') найдет данные слова в вашем примере), но вы не можете воспроизвести поведение like '%dd%' с полным текстом.

Смежные вопросы