Containstable 查询在搜索带有“n”的值时起作用
Containstable query acting up when searching for values with ' n '
我对全文索引相当陌生,我的查询按预期工作,直到我使用包含“n”的短语进行搜索。
示例:
SELECT C.name FROM dbo.Clients AS C
INNER JOIN
CONTAINSTABLE (dbo.Clients, name, '"Brick n Clay*"') AS K
ON C.ID = K.[KEY]
这个查询 returns 什么都没有,但是对同一个 table 相同短语的 LIKE 语句。
“n”字符对全文搜索有什么意义吗?有解决方法吗?
事实证明“N”的重要性在于它(连同许多其他值)存在于 FullTextIndex STOPLIST 中,旨在防止搜索无意义的常用值。
一个选项是为您的table禁用STOPLIST:
ALTER FULLTEXT INDEX ON MyDB.dbo.MyTable SET STOPLIST = OFF
我对全文索引相当陌生,我的查询按预期工作,直到我使用包含“n”的短语进行搜索。
示例:
SELECT C.name FROM dbo.Clients AS C
INNER JOIN
CONTAINSTABLE (dbo.Clients, name, '"Brick n Clay*"') AS K
ON C.ID = K.[KEY]
这个查询 returns 什么都没有,但是对同一个 table 相同短语的 LIKE 语句。
“n”字符对全文搜索有什么意义吗?有解决方法吗?
事实证明“N”的重要性在于它(连同许多其他值)存在于 FullTextIndex STOPLIST 中,旨在防止搜索无意义的常用值。
一个选项是为您的table禁用STOPLIST:
ALTER FULLTEXT INDEX ON MyDB.dbo.MyTable SET STOPLIST = OFF