Jam*_*min 4 sql sql-server full-text-search
嗨所有我在这里挣扎一点使用COLLATE忽略重音同时也使用包含全文.
我已经减少了列,我只搜索一个这里的例子,并且我很难编码实际参数只是为了这个直到我理解它.
如果我有
SELECT
Col1,
Title COLLATE SQL_Latin1_General_Cp850_CI_AI AS Title,
ColX
FROM
Foo
WHERE
CONTAINS((Title), '"suenos" OR "french"')
Run Code Online (Sandbox Code Playgroud)
这只会返回法语结果.如果我添加外卡后,例如:
WHERE
CONTAINS((Title), '"suenos*" OR "french"')
Run Code Online (Sandbox Code Playgroud)
我得到了Sueños和法语的结果.我注意到了LIKE和COLLATE的相同行为,例如它只有'suenous%'的词与'suenos'相对应.
为什么是这样?
非常感谢.
假设:您使用的是sql2005或更高版本.
我相信你需要在首次创建索引时将Accent Sensitivity设置为ON或OFF.
CREATE FULLTEXT CATALOG AwCat WITH ACCENT_SENSITIVITY=OFF
GO
Run Code Online (Sandbox Code Playgroud)
或改变它:
ALTER FULLTEXT CATALOG AwCat REBUILD WITH ACCENT_SENSITIVITY=ON
GO
Run Code Online (Sandbox Code Playgroud)
您可以在此处了解更多信息Microsoft SQL Server 9.0技术文章SQL Server 2005全文搜索:内部和增强功能
| 归档时间: |
|
| 查看次数: |
4394 次 |
| 最近记录: |