在 CONTAINSTABLE 中未找到接近的匹配项

2023-12-31

I am using SQL Server 2008

DDL

CREATE TABLE [dbo].[t](
    [words] [varchar](1000) NULL,
    [id] [int] IDENTITY(1,1) NOT NULL
) ON [PRIMARY]

DML

insert into t(words)values('this is my laptop')
insert into t(words)values('this does not contains headphone')

SQL查询

SELECT *
FROM 
t as t
JOIN CONTAINSTABLE(t, words,'"headphone*"', 10) fulltextSearch
ON
t.Id = fulltextSearch.[KEY]

Results

没有找到记录

我期待着一张唱片。任何想法?


“this”很可能是一个干扰词(如“the”、“and”等),因此它不会包含在索引中。尝试在文本中搜索真实的单词之一。

- 编辑 -

好吧,不是这样的...

我尝试了你的代码,它按我的预期工作 - 查询返回了一条记录。唯一的区别是我将 [id] 定义为主键(您也必须这样做,否则无法创建索引)。我敢打赌您的索引未填充 - 在 SSMS 中,右键单击表格,选择“全文索引”->“开始完整填充”。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 CONTAINSTABLE 中未找到接近的匹配项 的相关文章

随机推荐