Полнотекстовый поиск CONTAINSTABLE - PullRequest
1 голос
/ 14 июля 2009

У меня вопрос по поводу функции CONTAINSTABLE. Я хотел бы найти все, что заканчивается строкой поиска.

Я могу использовать *, чтобы найти все, что начинается со значения поиска, но мне нужен эквивалент для знака% в функции SQL LIKE.

Что я хочу: найти все, что заканчивается на 123, чтобы в качестве значения поиска я мог использовать «* 123» в моей функции CONTAINSTABLE. Но это не работает ..

Если я хочу, чтобы все результаты начинались с 123, я использую «123 *», и это хорошо работает.

Но что эквивалентно для -> LIKE% 123 ?? это не "* 123" в функции CONTAINSTABLE. Что это тогда?

Спасибо!

Ответы [ 2 ]

0 голосов
/ 11 января 2012

Вот мой обходной путь:

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

select * from MyBigTable 
where TheNormalColumn   contains ('"china*"')
   or TheReversedColumn contains ('"anihc*")

Это вдвое больше работы, занимает вдвое больше места, но работает.

0 голосов
/ 14 июля 2009

К сожалению, полнотекстовый поиск SQL Server НЕ поддерживает поиск выражения с лидирующим "%" - пробовал сам, но это просто не поддерживается.

Вы можете искать CONTAINS ("выражение%"), но не для CONTAINS ("% postfix").

Марк

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