Нужна помощь с Sql Server проблема полнотекстового поиска - PullRequest
0 голосов
/ 21 апреля 2009

У меня есть Full Text Catalog для одной таблицы с тремя полями: -

TABLE: Animals
Fields: Name, Breed, LatinName.

Теперь каталог , кажется, работает отлично.

например.

CREATE FUNCTION AnimalSearch
(
    @Name NVARCHAR(200)
) RETURNS TABLE AS
RETURN 
(
    SELECT KEY_TBL.[Key] as Name,
        KEY_TBL.RANK as Relevance
    FROM CONTAINSTABLE(Animals, Name, @Name) AS KEY_TBL
)

Теперь, когда я запускаю это, я получаю следующие результаты: - Имя = ма (нет результатов) Имя = коврик (без результатов) Имя = матовый (1 результат - правильный).

SELECT * FROM [dbo].[AnimalSearch]('ma')

Это правильный способ использовать это? Я также пытался заменить CONTAINSTABLE на FREETEXTTABLE .. то же самое .. без результатов.

Есть идеи, кто-нибудь?

Редактировать

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

1 Ответ

1 голос
/ 21 апреля 2009

Не уверен, что это хорошая идея. Табличные функции не хранят статистику, поэтому производительность может снизиться.

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