Лучший способ поиска в столбце varchar на сервере SQL - PullRequest
4 голосов
/ 13 октября 2008

Что бы вы порекомендовали для поиска в таблице SQL Server (столбец varchar (max)) по термину?

Скажем, как в ebay, если вы ищете "wii brand new", вы получите такие результаты, как "Совершенно новая игра Nintendo Wii Fit + Balance Board", "Wii Fit (Wii) BRAND NEW WII FIT GAME + BALANCE" BOARD».

Я думаю, что он в основном ищет каждое слово и возвращает те, которые содержат все слова, что бы вы порекомендовали?

Ответы [ 2 ]

4 голосов
/ 13 октября 2008

Вы ищете полнотекстовое индексирование, оно позволяет выполнять более сложные запросы, чем регулярные выражения или тому подобное.

Проверьте эту статью для быстрого ознакомления, инструкции для SQL Server 2000, где его немного сложнее настроить, чем в 2005 или 2008.

Соответствующая цитата:

 With full-text searching, you can perform many other types of search:

 * Two words near each other
 * Any word derived from a particular root (for example run, ran, or running)
 * Multiple words with distinct weightings
 * A word or phrase close to the search word or phrase
1 голос
/ 13 октября 2008

Зависит от того, что вы пытаетесь сделать. Для простого поиска вы можете просто сделать select * from table where field like '%word%'. Но если это какая-то особенность приложения, вы хотите изучить приложение для поиска с полным тет. Он может хранить слова, которые появляются в этом поле, как индексы, а затем выполнять поиск по этим словам вместо использования этого поля.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...