我需要在名称搜索中启用部分匹配。目前它可以使用,Like '%@name%'
但还不够好。
我们需要启用输入名字和姓氏,并且两者都需要是部分的,所以我假设全文是要走的路。
问题是我无法让它对名称进行部分匹配。例如,搜索我的名字 (Fedor Hajdu) 将起作用,如果我输入全部而不是部分的任何部分(它应该匹配'fe ha'
例如搜索。
我怎样才能做到这一点?可以将全文索引设置为执行音节匹配之类的操作吗?
我需要在名称搜索中启用部分匹配。目前它可以使用,Like '%@name%'
但还不够好。
我们需要启用输入名字和姓氏,并且两者都需要是部分的,所以我假设全文是要走的路。
问题是我无法让它对名称进行部分匹配。例如,搜索我的名字 (Fedor Hajdu) 将起作用,如果我输入全部而不是部分的任何部分(它应该匹配'fe ha'
例如搜索。
我怎样才能做到这一点?可以将全文索引设置为执行音节匹配之类的操作吗?
使用 CONTAINS() 或 CONTAINSTABLE() 您需要做的就是在匹配字符串的末尾添加 * :
包含(描述,'"top*"');
如果你有你的字符串作为参数,你可以像这样连接:
SET @SearchTerm = '"' + @NameParameter + '*"'
包含(描述,搜索词);
https://technet.microsoft.com/en-us/library/ms142492(v=sql.105).aspx