SQL-сервер Полнотекстовая проблема с символом точки - PullRequest
4 голосов
/ 14 мая 2011

У меня есть эти строки:

  • ROW 1, содержащий: Как .405
  • ROW 2, содержащий: Как 405

Когда я использую запрос содержит, например: Содержит (FIELDNAME, '" 405 "')

Или этот запрос: Содержит (FIELDNAME, '"405 *"')

Я получил только строку 2, но не строку 1 из-за периода.

Я попытался создать пустой стоп-лист и присвоил его полному тексту, он не работает. Я пробовал запрос FREETEXT, он также не работает.

Что странно, когда я добавляю еще один символ к значению строки 1 (как. 405M), это работает ....

Как вернуть также строку 1 при запросе только "405"?

Спасибо

1 Ответ

0 голосов
/ 16 августа 2011

Ну, немного старый вопрос, но:

Вы не сказали, какой язык вы используете, поэтому я предполагаю, что вы используете английский.

Это происходит потому, что .405 рассматривается как число. В английском языке .405 является десятичным значением, означающим 0,405. Таким образом, поиск ft будет пытаться найти числа с 405 в десятичной части. Ft также попытается найти округленные числа, похожие на .405.

Вы должны проверить мой вопрос: sql-server-2008-fulltext-rounding-money-value

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