SET_TOKENIZER_PARAMETER

配置分词器参数。

语法

SELECT v_txtindex.SET_TOKENIZER_PARAMETER (parameter_name, parameter_value USING PARAMETERS proc_oid='proc_oid')

参数

parameter_name
要配置的参数的名称。

使用下列内容之一:

  • stopwordsCaseInsensitive:非索引字列表。属于此列表的所有标记都会被忽略。Vertica 支持最多包含前 256 个 Unicode 字符的分隔符和非索引字。

    如果您要定义包含逗号或反斜杠的非索引字,则需要对其转义。
    例如: "Dear Jack\," "Dear Jack\\"

    默认值: '' (空列表)

  • majorSeparators:主要分隔符列表。用引号引起来且之间没有空格。

    默认值: E' []<>(){}|!;,''"*&?+\r\n\t'

  • minorSeparators:二级分隔符列表。用引号引起来且之间没有空格。

    默认值: E'/:=@.-$#%\\_'

  • minLength — 标记拥有的最小长度,Integer 类型。必须大于 0。

    默认值: '2'

  • maxLength:标记拥有的最大长度。Integer 类型。不得大于 1024 字节。有关增加标记大小的信息,请参阅 文本搜索参数

    默认值: '128'

  • ngramsSize:大于 0 的整数值。仅与 ngram 分词器结合使用。

    默认值: '3'

  • used:指示无法更改分词器配置。Boolean 类型。将 used 设置为 True 后,对 setTokenizerParameter 的任何调用将失败。

    在使用已配置的分词器之前,您必须将参数 used 设置为 True。这样做可防止配置在用于创建文本索引后被修改。

    默认值: False

parameter_value
配置参数的值。

如果您要禁用 minorSeperators 或 stopWordsCaseInsensitive,则将其值设置为 ''

proc_oid
在创建分词器时为其分配的唯一标识符。用户必须查询系统表 vs_procedures 以为给定分词器名称获取 proc_oid。有关详细信息,请参阅配置分词器

示例

以下示例显示了如何使用 SET_TOKENIZER_PARAMETER 配置非索引字和分隔符。

配置分词器的非索引字:

=> SELECT v_txtindex.SET_TOKENIZER_PARAMETER('stopwordsCaseInsensitive', 'devil,TODAY,the,fox' USING PARAMETERS proc_oid='45035996274126984');
 SET_TOKENIZER_PARAMETER
-------------------------
 t
(1 row)

配置分词器的主要分隔符:

=> SELECT v_txtindex.SET_TOKENIZER_PARAMETER('majorSeparators',E'{}()&[]' USING PARAMETERS proc_oid='45035996274126984');
 SET_TOKENIZER_PARAMETER
-------------------------
 t
(1 row)