【发布时间】:2014-11-18 15:00:21
【问题描述】:
我正在使用 SQL Server 2014 的全文搜索功能在数据库中查找以给定前缀开头的文档。但是,有些查询不会产生任何结果,但它们应该会产生任何结果。
举个例子:
SELECT * FROM [Profile].[DocumentView] WHERE CONTAINS(Content, '"Friedenseins*"')
(24 row(s) affected)
SELECT * FROM [Profile].[DocumentView] WHERE CONTAINS(Content, '"Friedensein*"')
(0 row(s) affected)
SELECT * FROM [Profile].[DocumentView] WHERE CONTAINS(Content, '"Friedensei*"')
(29 row(s) affected)
我了解第一个和第三个结果,但不了解第二个结果。全文索引的停止列表已关闭。分词器的语言设置为德语。
编辑:
使用FREETEXT 的建议不是针对这种特殊情况的解决方案,因为我需要CONTAINS 的邻近搜索功能。
【问题讨论】:
-
表示您在 Content 列中没有带有以下 ("Friedensein") 的“单词”,但您在具有以下开头的列中有“单词”("Friedenseins","Friedensei" )。
-
目标词其实是“Friedenseinsätze”,第一次和第三次查询都找到了,第二次没有找到。
-
从来没有遇到过这种情况,急于听取专家的意见。 +1
-
我在 Connect 上创建了一个问题:connect.microsoft.com/SQLServer/feedback/details/1032815
标签: sql-server full-text-search sql-server-2014