跳到主要内容

TOKENIZE

描述

该函数用于将文本按照指定的分词器及 Json 形式的参数,输出分词结果。

语法

TOKENIZE('text', ['parser'], ['behavior_ctrl'])

参数解释

字段说明
text表示文本。支持 TEXTCHARVARCHAR 类型的数据。
parser表示分词器名称。支持 BENG(基础英文)、NGRAM(中文)、SPACE(空格)、IK(中文)等分词器。
behavior_ctrlJSON 形式的参数指定,可选配置项如下:
  • stopwords:停词表,如果无,按全局默认配置,应用全局停词;如果为空,则为空。
  • case:如果无,则按系统默认行为处理;如果有,按 upper/lower 进行处理。
  • output:有以下格式:
    • default:输出仅包含词元的 json array, ["hello", "world", "english"]
    • all:包含 doc_len 和词频的 json object,如 {"doc_len":3, "tokens":["i":1, "love":1, "china":1]}
    • additional-args:["token_size:2"]} 特定分词器的参数,如ngram

示例

使用 TOKENIZE 函数来将字符串 I Love China 分解成单词,并使用 beng 作为分隔符。然后使用 JSON 格式的参数来设置输出选项。

SELECT TOKENIZE('I Love China','beng', '[{"output": "all"}]');

返回结果如下:

+--------------------------------------------------------+
| TOKENIZE('I Love China','beng', '[{"output": "all"}]') |
+--------------------------------------------------------+
| {"tokens": [{"love": 1}, {"china": 1}], "doc_len": 2} |
+--------------------------------------------------------+
1 row in set (0.001 sec)