#sql #sql-server #tsql
#sql #sql-сервер #tsql
Вопрос:
Когда я запускаю приведенный ниже запрос, он не дает всех результатов. У меня есть данные, которые выпущены в июле и октябре. оба поля заголовка содержат слово «банк». Но результат показывает только первое июля.
Title:Bank of Ireland - issued in Oct
Title:Ulster Bank - issued in July
SELECT [KEY], RANK
FROM CONTAINSTABLE(tblDB, title, '"bank"')
ORDER BY [KEY] DESC
Я пытался «Bank» вместо «bank». Это не работает.
Кто-нибудь может объяснить, что такое CONTAINSTABLE?
Я прочитал пару статей, это мне не помогло.
Ответ №1:
«Возвращает таблицу из нуля, одной или более строк для тех столбцов, которые содержат символьные типы данных для точных или нечетких (менее точных) совпадений с отдельными словами и фразами, близости слов на определенном расстоянии друг от друга или взвешенных совпадений. На CONTAINSTABLE можно ссылаться только в предложении FROM инструкции SELECT, как если бы это было обычное имя таблицы.
Запросы, использующие CONTAINSTABLE, определяют полнотекстовые запросы типа contain, которые возвращают значение рейтинга релевантности (RANK) и полнотекстовый ключ (KEY) для каждой строки. Функция CONTAINSTABLE использует те же условия поиска, что и предикат CONTAINS.»
Скажите мне, что вы пытаетесь сделать, и я смогу больше помочь?
Комментарии:
1. спасибо, теперь я перестраиваю полнотекстовый индекс. Надеюсь, это решит проблему.
Ответ №2:
Вот описание CONTAINSTABLE. Попробуйте перестроить свой полнотекстовый индекс, а затем снова выполните поиск.