Sql server全文包含+;整理以忽略重音问题
大家好,我在这里有点挣扎,在使用COLLATE忽略重音的同时也使用Contains全文 对于这里的示例,我将搜索的列减少到了一列,并且我对实际参数进行了硬编码,直到我理解为止 如果我有Sql server全文包含+;整理以忽略重音问题,sql,sql-server,full-text-search,Sql,Sql Server,Full Text Search,大家好,我在这里有点挣扎,在使用COLLATE忽略重音的同时也使用Contains全文 对于这里的示例,我将搜索的列减少到了一列,并且我对实际参数进行了硬编码,直到我理解为止 如果我有 SELECT Col1, Title COLLATE SQL_Latin1_General_Cp850_CI_AI AS Title, ColX FROM Foo WHERE CONTAINS((Title), '"suenos" OR "french"')
SELECT
Col1,
Title COLLATE SQL_Latin1_General_Cp850_CI_AI AS Title,
ColX
FROM
Foo
WHERE
CONTAINS((Title), '"suenos" OR "french"')
这只返回法语的结果。如果我在例如后添加通配符:
WHERE
CONTAINS((Title), '"suenos*" OR "french"')
我得到了Sueños和french的结果。我注意到一个LIKE和COLLATE也有同样的行为,例如它只使用了与“suenos%”相对应的带有“suenous%”的单词
为什么会这样
非常感谢。假设:您正在使用sql2005或更高版本 我认为,在第一次创建索引时,需要将重音敏感度设置为ON或OFF
CREATE FULLTEXT CATALOG AwCat WITH ACCENT_SENSITIVITY=OFF
GO
或者改变它:
ALTER FULLTEXT CATALOG AwCat REBUILD WITH ACCENT_SENSITIVITY=ON
GO
你可以在这里找到更多