我遇到了不少困难,找到了一个很好的解决办法停止词:SQL 2008:关闭全文搜索查询
比方说,我有“公司”表,其中一个叫列“名称”。我有这个专栏的全文目录。如果用户搜索“非常好的公司”,我的查询将是:
SELECT
ssw.*
FROM
sys.fulltext_system_stopwords ssw
WHERE
ssw.language_id = 1033;
:
SELECT
*
FROM
Company
WHERE
CONTAINS(Name, '"Very" AND "Good" AND "Company"')
问题是在这个例子中,这个词“非常”在停止字的标准列表中显示
即使有一行名为“Very Good Company”的行,也会导致查询返回无行。
我的问题是,我将如何去关闭停用词为我的查询?或者我会如何去除它们?
或者还有另一种方法我应该去关于此搜索?
这工作完美。 – James
将它重新打开有点隐藏在BOL中。你不只是将它设置为ON,而是需要将它设置为你自己的一个停止列表的名称,或者使用'SYSTEM'来使用内建的:'ALTER FULLTEXT INDEX ON MyTable SET STOPLIST = SYSTEM' – Rhumborl