Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Экранирование специальных слов (AND, OR, NEAR ...) в полнотекстовом поиске  [new]
deadtraktorist
Member

Откуда:
Сообщений: 2
Добрый день.
Такой ситуация: есть поиск по адресу в базе, применяется полнотекстовый поиск. Если искать, например, Portland OR (штат Орегон), то запрос

select * from locationlookup where contains(PlainLocation, 'Portland and OR') 

ничего не отдаёт, в то время как

select * from locationlookup where PlainLocation = 'Portland OR'

честно выдаёт запись.
Как правильно заэкранировать такие случаи?
13 мар 15, 16:36    [17381780]     Ответить | Цитировать Сообщить модератору
 Re: Экранирование специальных слов (AND, OR, NEAR ...) в полнотекстовом поиске  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 4804
deadtraktorist,

Возможно речь идёт о Stopwords

https://msdn.microsoft.com/en-us/library/ms142551.aspx

OR это частое слово в английском, хотя оно и является сокращением Oregon.

Поэтому его экранирую, не экранируй оно будет игнорироваться.

Надо вам прописать Stopwords.
13 мар 15, 16:54    [17381908]     Ответить | Цитировать Сообщить модератору
 Re: Экранирование специальных слов (AND, OR, NEAR ...) в полнотекстовом поиске  [new]
deadtraktorist
Member

Откуда:
Сообщений: 2
a_voronin,

отключение стоплиста помогло, спасибо.
13 мар 15, 18:38    [17382546]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить