2

我第一次使用 SQL 自由文本搜索,我有点困惑为什么它的行为方式如此。

我有一个用户可以搜索的联系人表,我正在使用

SELECT Contacts.*, [Rank]
FROM 
FREETEXTTABLE (Contacts, *, 'O''Roarty') AS Contact1_ftt
JOIN Contacts ON Contacts.ContactID = Contact1_ftt.[Key]

这将返回 2 个结果,结果是关于以“O'Roarty”为姓氏的人。但是,如果我搜索“Roarty”,我根本没有得到任何结果。如果我搜索“Dave”我得到结果但“Dav”没有结果,也会发生同样的情况。

它看起来像部分单词不起作用。有没有办法启用部分单词匹配?

4

2 回答 2

1

这个 MSDN Question/Answer 比我能更好地解释功能,所以我将它链接在这里

CONTAINSTABLE如果您想要部分单词匹配,您基本上想要使用。

于 2013-10-02T13:35:19.393 回答
0

首先全文搜索不支持后缀搜索。所以你不能使用搜索"*ave"。其次,关于LIKE, LIKEAND的使用方式FTS不同。在这里查看更多详细信息。

于 2013-10-02T15:20:59.823 回答