1

我正在使用 SQL 全文搜索,并且有一个使用 FREETEXTTABLE 函数的存储过程。

这一切都很好,但是,我注意到,如果我搜索诸如“第 19 章”之类的内容,则 19 似乎被丢弃了,并且搜索仅搜索“第 19 章”。

此外,如果我只搜索“19”,我不会得到任何结果。我知道我索引的列在多行中包含一个“19”。

这是预期的行为吗?不索引数字?

如果是这样,那么我想我将不得不忍受它,但如果不是这样,如果有人认为我做错了什么,我会很乐意发布任何 T-SQL。

谢谢。

PS我已经用谷歌搜索了这个并且没有发现任何关于搜索数字将全文搜索的内容。

4

1 回答 1

0

我终于找到了这背后的原因。

数字在 SQL Server 中被视为干扰词。您可以通过删除适合您的语言的噪声文件中的数字条目来允许搜索数字。

噪声文件位于SQL Server 安装的FTData目录中。

英文噪音文件是:noiseENU.txt & noiseENG.txt

希望这可以帮助某人。

于 2011-01-28T16:48:39.533 回答