2015-07-16 2 views
0

Я пытаюсь выполнить поиск, в котором данные могут соответствовать любому набору столбцов.Синтаксическая ошибка при полнотекстовом поиске

Когда я запускаю этот

DECLARE @Name varchar(80)   = 'wisr aaron' 
SELECT ID FROM Data WITH (NOLOCK) WHERE CONTAINS(*, @Name) 

Я получаю сообщение об ошибке

Msg 7630, Level 15, State 3, Line 5 
Syntax error near 'aaron' in the full-text search condition 'wisr aaron'. 

Msg 7630 предполагают, что

DECLARE @Name varchar(80)   = 'wisr near aaron' 
SELECT ID FROM Data WITH (NOLOCK) WHERE CONTAINS(*, @Name) 

является решением. Я попытался запустить его. Это не произошло, но результатов не было.

Есть ли способ сделать это, не добавляя NEAR повсеместно?

ответ

0

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

DECLARE @Name varchar(80)   = '"wisr aaron"' 

Но я сомневаюсь, что вы получите какой-то результат, если версия NEAR ничего не получится ... (может восстановить свой индекс?)