【问题标题】:Full-Text keywords unicode全文关键字 unicode
【发布时间】:2012-10-16 09:03:53
【问题描述】:

我有一个非常大的数据库,其中包含数十亿字。我需要在这些词中搜索,我知道的最快方法是使用 SQL SERVER 2008 附带的 iFTS。

数据为土耳其语。我的意思是数据的语言是土耳其语。 SQL SERVER 2008 可以毫无问题地处理全文搜索,即使是土耳其语。

但是当我尝试按此处所述列出全文单词时会出现问题:http://technet.microsoft.com/en-us/library/cc280900.aspx

sys.dm_fts_index_keywords 返回的词列是 keyworddisplay_term。但是这些列的字符集不正确。例如,土耳其字符集中同时存在 ı 和 i。类似地 o 和 ö、g 和 ğ。但是返回的单词是 ascii 编码的。就像 körkor 的形式返回,而 içinicin 的形式返回。

但是当我进行 CONTAINS 搜索时,SQL Server 匹配搜索词正确返回真实结果。我的意思是用 körkor 搜索会返回不同的结果,这是真正的行为。

所以我需要获取存储在 SQL 中的单词,而不是它们的 ascii 表示形式。

我希望我能解释我的问题。

【问题讨论】:

  • 我有 1 个小问题,你正在从这个 sys.dm_fts_index_keywords 函数中读取数据 它仅用于检查它的索引方式,搜索词也会发生变化,然后它将与索引列进行比较。通过 contains 或 FULLTEXT 获取全文键并从主表中读取值。

标签: sql-server sql-server-2008 full-text-search


【解决方案1】:

这似乎已在 SQL 2012 中修复...在 SQL 2012 中,查询 sys.dm_fts_index_keywords 返回的列、关键字和显示项;现在正在返回正确的土耳其语单词...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-30
    • 1970-01-01
    • 2011-06-03
    • 1970-01-01
    相关资源
    最近更新 更多