SQL Server 2005 全文搜索:干扰词

Posted

技术标签:

【中文标题】SQL Server 2005 全文搜索:干扰词【英文标题】:SQL Server 2005 Full-text search: Noise Words 【发布时间】:2010-01-12 20:17:51 【问题描述】:

使用 ContainsText,如果我在引号中搜索:“报告第 1 部分”,它会返回正确的结果(报告第 1 部分)。但是,如果我搜索:Report Part 1,它给我的结果为零。

我的理解是全文会去掉1作为干扰词,然后搜索包含报告和部分。我假设结果会给我报告第 1 部分、报告第 2 部分等,而不是零结果。

谁能告诉我为什么全文搜索会以这种方式工作?

【问题讨论】:

【参考方案1】:

这可能是由于 SQL Server 过滤掉了带有干扰词的搜索。如果启用“转换干扰词”会发生什么?

sp_configure 'show advanced options', 1
RECONFIGURE
GO
sp_configure 'transform noise words', 1
RECONFIGURE
GO

这会使 SQL Server 将查询中的所有干扰词转换为“*”。

【讨论】:

我想我应该回过头来说我找到了答案,但你说对了!我的查询被转换为“'Report' and 'Part' and '1'”,但是 1 被删除了,所以你留下了一个无法运行的不完整查询

以上是关于SQL Server 2005 全文搜索:干扰词的主要内容,如果未能解决你的问题,请参考以下文章

移动/复制 SQL Server 2005 全文索引

返回全文搜索中找到的短语的周围文本,SQL 2005

SQL Server中的全文搜索

SQL Server 全文搜索

SQL Server 全文搜索

Sql Server 数据库建全文搜索