Полнотекстовый поиск не возвращает ожидаемых результатов - PullRequest
1 голос
/ 03 июня 2010

Я экспериментирую с полнотекстовым поиском SQL Server.

У меня есть простая таблица категорий с Id в качестве первичного ключа:

CREATE TABLE [dbo].[Category](
 [Id] [int] IDENTITY(1,1) NOT NULL,
 [CategoryName] [varchar](100) NOT NULL,
)

Мой запрос:

SELECT * 
FROM
 FREETEXTTABLE (Category, CategoryName, 'music') AS F
 INNER JOIN  Category C ON F.[Key] = C.Id
ORDER BY F.Rank DESC

Это возвращает мне несколько записей со словом «музыка», но НЕ возвращает ни одной записи со словом «мюзикл».

Хотя можно сказать, что искомая строка не очень велика, и использование оператора LIKE разрешит ее. Я хотел бы использовать полнотекстовый поиск, потому что этот простой пример будет расширен для включения других таблиц и полей.

1 Ответ

1 голос
/ 03 июня 2010

Если вы хотите сопоставить префиксы, вы можете использовать Содержимое таблицы вместо freetexttable и включить подстановочный знак в поисковый запрос: 'music *'

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