2010-01-11 6 views
1

В настоящее время я пытаюсь получить полный текстовый поиск SQL Server 2005 для работы.SQL Server 2005 Полнотекстовый поиск Задача

У меня есть таблица, где все столбцы строк заполняются в полном текстовом каталоге.

Теперь я хочу выполнить поиск в этих столбцах. . строка в первом столбце содержит «Name123», второй столбец содержит «LegalForm123» Вторая строка в первом столбце содержит «Name123 LegalForm123», второй столбец пуст.

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

CONTAINSTABLE(ServiceProvider, (Col1, Col2), 'Name123 AND LegalForm123', 1000) 
-- returns the second row only 

CONTAINSTABLE(ServiceProvider, (Col1, Col2), 'Name123 OR LegalForm123', 1000) 
-- returns the both rows 

Почему первый пример не возвращает оба ряда? Разве это не поиск по всем столбцам?

ответ

0

Первый код также читает «найти строку, где значение соответствует« Name123 AND LegalForm123 »в Col1 или Col2». Это дает правильный результат.

Вы, вероятно, хотите

CONTAINSTABLE(ServiceProvider, (Col1, Col2), 'Name123', 1000) 
    or CONTAINSTABLE(ServiceProvider, (Col1, Col2), 'LegalForm123', 1000) 
Смежные вопросы