使用Sql Server 2008,您如何实际找到使用全文搜索的精确字符串匹配。我对此感到非常难过,我无法在网上找到满意的解决方案。使用全文搜索来查找完全匹配
例如,如果我在搜索字符串“Bojan Skrchevski”,我想要的第一个结果就是这个。
到目前为止,我试过格式化字符串,如:“Bojan * NEAR Skrchevski *”,并调用CONTAINSTABLE来获得结果,但是这个字符串被格式化为返回更多的结果,如Bojana和Bojananana等。我也尝试过ORDER BY RANK,但仍然没有成功。
此外,在我的字符串我有象数序列: “3 1 7”,但与当前格式它也返回 “7 1 3” 等
实施例:
DECLARE @var varchar(4000);
SET @var = '"Oxford*" NEAR 24 NEAR 7 NEAR 5 NEAR "London*"'
SELECT [Key] FROM CONTAINSTABLE(dbo.[MyTable], [MyField], @var);
我希望能够得到确切的顺序。不要因此得到“牛津7 24 5伦敦”。
如何格式化字符串以正确完成此操作?
@Kristoff - 例如:如果我搜索这样的字符串:“牛津24 3 6伦敦”,如果有“牛津3 24 6伦敦”,也会返回。我只需要确切的顺序完全匹配。 – TheBoyan
仅供参考,可从以下位置找到示例:http://msdn.microsoft.com/en-us/library/ms142583.aspx – Mike