我正在尝试创建一个从表中返回人名的查询。
该表包含一个名为 full_name 的字段。
我在该字段的表上创建了一个全文索引。
我有以下查询
ALTER procedure [dbo].[spGetContactFromContactName]
@contactname VARCHAR(200)
AS
DECLARE @searchstr VARCHAR(200)
set @searchstr = '"'+REPLACE(@contactname,',','*" OR ''')+'*"'
select * from tbl_ContactDetails
where contains(Full_Name,@searchstr)
这有效,但仅在某些情况下有效。
如果该字段包含姓名John James Jones,则如果您输入以下任何内容,则该查询将起作用:
- 约翰
- 詹姆士
- 琼斯
- 约翰·詹姆斯
- 詹姆斯·琼斯
- 约翰·詹姆斯·琼斯
但如果您输入John Jones则不起作用。
我在网上搜索了一个解决方案,这就是上述查询的来源。任何想法或指示将不胜感激。
提前致谢
大卫