分析器索引参数

分析器索引参数指定缺省分析器以及特定字段的任何特定分析器。

语法

分析器索引参数
元素 描述
analyzer 分析器的名称。可能的值:
  • cjk:处理中文、日语和韩语文本。忽略超大字符集。
  • cjk.ws:处理中文、日语和韩语文本。处理超大字符集。
  • esoundex:将文本处理为发音代码。
  • keyword:将输入文本处理为单个标记,并根据需要为固定长度数据类型列添加结尾空格。
  • keyword.rt:将输入文本处理为单个标记并除去结尾空格。
  • simple:仅处理字母字符(不含非索引字)。
  • snowball:将文本处理为主干词。
  • snowball.language:将文本处理为指定语言的主干词。
  • soundex:将文本处理为四个发音代码。
  • standard:缺省值。处理字母字符、特殊字符以及数字(含非索引字)。
  • stopword:仅处理字母字符(含非索引字)。
  • udr.udr_name:用户定义的分析器的名称。
  • whitespace:仅根据空格创建标记。
column 包含分析器分配的列的名称。
directory 分析器分配文件的路径。
field 建立索引的 XML 标记、路径或列名。
filename 包含分析器分配的文件的名称。
table 包含分析器分配的表的名称。

用途

如果指定单个分析器,在创建 bts 索引时会将其用于所有建立索引的字段或列。如果列出分析器,后跟分析器与字段对,那么第一个分析器将用于所有字段(随分析器分配明确列出的字段除外)。

您可以在表列或文件中按字段指定分析器列表。创建索引的用户必须可以读取文件或表。使用逗号、空格、换行符或这些分隔符的组合来分隔文件或表中的字段名和分析器对。创建索引时,该文件或表会变为只读。如果希望添加或更改分析器分配,那么必须删除并重新创建该索引。

示例

以下示例对一个列创建 bts 索引并使用 CJK 分析器:
CREATE INDEX desc_idx ON products (brands  bts_char_ops)
 USING bts (analyzer="cjk") IN sbsp1;

以下示例对两个 XML 字段创建 bts 索引,并对每个字段使用不同的分析器:

CREATE INDEX boats_bts ON boats(xml_data bts_lvarchar_ops) 
    USING bts
(
xmltags="(skipper,boatname)" ,
analyzer="(skipper:soundex,boatname:snowball)"
)
IN bts_sbspace;