您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

全文搜索sql server 2005

全文搜索sql server 2005

我不太了解您为什么要使用FTS?如果您想要进行中,则只需使用LIKE即可完成:

SELECT * FROM test WHERE data like’%world%’

SELECT * FROM test WHERE data like’%j-world%’

如果您想玩FTS。

在SSMS Databases \ YourDatabaseName \ Storage \ Full Text Stoplist中->右键单击并选择“ New Full-text StopList …”。我将其命名为 ,并确保已选中认的“创建空的syoplist”单选按钮。

在SSMS右键单击表dbo.test —>全文索引->属性—>选择页面:常规,全文索引Stoplist->输入创建的空列表的名称(我输入 )

现在,查询

从包含以下内容的测试中选择*(数据,““ j-world””))

仅返回“ Hello j-world”(没有“ Hello world”)

这也可以通过Tsql完成。关注msdn

====更新: 嗯,您的问题表明噪声的概念是主观的。

之所以起作用,是因为’j’是系统停用词(请参见,它通过’j’(3个符号)字符串搜索系统停用列表(),另请参阅(*)),而’-‘显然是断字符器。

我不建议您使用空停用词列表。我只是通过最少的努力就说明了“如何做”。 制定适合您的技术完全取决于您。我什至不是这个领域的专家以提供建议。我只是根据常识来回答你的

创建您自己的全文StopList,并用您的内容填充它。 您可能要重用系统非索引字表内容。 为此,您可能需要创建

然后通过 使用查找和替换和/或从(复制并粘贴( )的副本来创建自己的脚本。

(**)以下摘录自系统FT StopList的脚本副本,我将其命名为vgv_sys_copy:

ALTER FULLTEXT STOPLIST [vgv_sys_copy] ADD 'j' LANGUAGE 'French';
ALTER FULLTEXT STOPLIST [vgv_sys_copy] ADD 'j' LANGUAGE 'Italian';
ALTER FULLTEXT STOPLIST [vgv_sys_copy] ADD 'j' LANGUAGE 'Japanese';
ALTER FULLTEXT STOPLIST [vgv_sys_copy] ADD 'j' LANGUAGE 'Dutch';
ALTER FULLTEXT STOPLIST [vgv_sys_copy] ADD 'j' LANGUAGE 'Russian';
ALTER FULLTEXT STOPLIST [vgv_sys_copy] ADD 'j' LANGUAGE 'Swedish';
ALTER FULLTEXT STOPLIST [vgv_sys_copy] ADD 'j' LANGUAGE 'Simplified Chinese';
ALTER FULLTEXT STOPLIST [vgv_sys_copy] ADD 'j' LANGUAGE 'British English';

在索引列上发布了子问题,即在LIKE上使用FTS进行FTS搜索,获得了子问题

我还注意到我是根据sql Server 2005中不可用的功能回答的, 应该有MSsql \ FTData \ noiseENG.txt,我喜欢Sql Server 2005全文本搜索中“噪音词”的答案

我会删除“ j”。实际上,如果我是您,那么我将从头开始创建noiseENG.txt。但这是您的决定,具体取决于您的背景和我未知的多个因素。

我相信您应该将其作为单独的问题发布。我已经在StackExchange网站上被禁止了多次讨论(现在仍然在SF中)进行讨论。这不是论坛或讨论区,请参阅。常问问题。

SQLServer 2022/1/1 18:52:44 有325人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶