У меня проблема с запросом, который я выполняю.В основном это поиск по столу книг.В приведенном ниже запросе используется команда FREETEXTTABLE
для ранжирования поиска автора:
@author = 'lewis c s'
SELECT *
FROM tbl_products
INNER JOIN FREETEXTTABLE(tbl_products, [author], @author, LANGUAGE 'British English') AS key_tbl ON tbl_products.product_id = key_tbl.[key]
WHERE deleted = 0
ORDER BY key_tbl.[rank] DESC, author ASC, title ASC, stl_product_id ASC
Полученные результаты сбивают с толку ... возвращаемая верхняя строка принадлежит автору с именем lewis lewis
и lewis c s
занимает место ниже этого!
Теперь я отредактировал свой noiseENG.txt
, удалил отдельные буквы и перестроил свой полнотекстовый каталог, но я не вижу изменений в своих результатах.Я знаю, что изменение этого файла работает, потому что я добавил lewis
в список, и он отфильтровал все поиски с lewis
в столбце автора.
Примечание: если я ищу только 'cs', яне получайте результатов, поэтому кажется, что отдельные буквы игнорируются все вместе!Кроме того, для всех индексированных полей установлено значение British English
.
Кто-нибудь знает, почему команда FREETEXTTABLE
по-прежнему будет отфильтровывать отдельные буквы?