我需要在名称搜索上启用部分匹配。目前它适用于Like '%@name%'
,但它还不够好。
我们需要同时输入名字和姓氏,两者都需要是部分的,所以我假设全文是可行的。
问题在于我无法让它对名称进行部分匹配。例如,如果我输入完整但不是部分的任何部分,那么搜索我的名字(Fedor Hajdu)将起作用(例如,它应匹配搜索'fe ha'
。
我怎样才能做到这一点?可以将全文索引设置为执行类似音节匹配的操作吗?
答案 0 :(得分:3)
哼唱mya帮助你的三个选项:
答案 1 :(得分:0)
使用CONTAINS()或CONTAINSTABLE(),您需要做的就是在匹配字符串的末尾添加*:
CONTAINS(描述,'“top *”');
如果您将字符串作为参数,可以像这样连接:
SET @SearchTerm ='“'+ @NameParameter +'*”'
CONTAINS(Description,SearchTerm);
https://technet.microsoft.com/en-us/library/ms142492(v=sql.105).aspx