更新时间:2022-08-16 GMT+08:00
CREATE TEXT SEARCH CONFIGURATION
功能描述
创建新的文本搜索配置。文本搜索配置指定了文本搜索解析器,该文本搜索解析器可以将字符串划分成为标记,加上可以用于决定搜索对哪些标记感兴趣的字典。
注意事项
- 若仅指定了分析器,则新的文本搜索配置最初没有从标记类型到词典的映射, 因此会忽略所有的单词。随后必须调用ALTER TEXT SEARCH CONFIGURATION命令创建映射使配置生效。如果声明了COPY选项,那么会自动拷贝指定的文本搜索配置的解析器、映射、配置选项等信息。
- 如果指定了模式名称,则会在指定的模式中创建文本搜索配置。否则会在当前模式中创建。
- 定义文本搜索配置的用户将成为其所有者。
- PARSER和COPY选项是互相排斥的,因为当一个现有配置被复制,其分析器配置也被复制了。
语法格式
1 2 3 |
CREATE TEXT SEARCH CONFIGURATION name
( PARSER = parser_name | COPY = source_config )
[ WITH ( {configuration_option = value} [, ...] )];
|
参数说明
- name
要创建的文本搜索配置的名称。该名称可以有模式修饰。
- parser_name
用于该配置的文本搜索分析器的名称。
- source_config
要复制的现有文本搜索配置的名称。
- configuration_option
文本搜索配置的配置参数,主要是针对parser_name执行的解析器,或者source_config隐含的解析器而言的。
取值范围:目前共支持default、ngram、zhparser三种类型的解析器,其中default类型的解析器没有对应的configuration_option,ngram、zhparser类型解析器对应的configuration_option如表1所示。表1 ngram、zhparser类型解析器对应的配置参数 解析器
配置参数
参数描述
取值范围
ngram
gram_size
分词长度。
正整数,1~4
默认值:2
punctuation_ignore
是否忽略标点符号。
- true(默认值):忽略标点符号。
- false:不忽略标点符号。
grapsymbol_ignore
是否忽略图形化字符。
- true:忽略图形化字符。
- false(默认值):不忽略图形化字符。
zhparser
punctuation_ignore
分词结果是否忽略所有的标点等特殊符号(不会忽略\r和\n)。
- true(默认值):忽略所有的标点等特殊符号。
- false:不忽略所有的标点等特殊符号。
seg_with_duality
是否将闲散文字自动以二字分词法聚合。
- true:将闲散文字自动以二字分词法聚合。
- false(默认值):不将闲散文字自动以二字分词法聚合。
multi_short
分词执行时是否执行针对长词复合切分。
- true(默认值):执行针对长词复合切分。
- false:不执行针对长词复合切分。
multi_duality
设定是否将长词内的文字自动以二字分词法聚合。
- true:将长词内的文字自动以二字分词法聚合。
- false(默认值):不将长词内的文字自动以二字分词法聚合。
multi_zmain
是否将重要单字单独显示。
- true:将重要单字单独显示。
- false(默认值):不将重要单字单独显示。
multi_zall
是否将全部单字单独显示。
- true:将全部单字单独显示。
- false(默认值):不将全部单字单独显示。
示例
创建文本搜索配置:
1 |
CREATE TEXT SEARCH CONFIGURATION ngram1 (parser=ngram) WITH (gram_size = 2, grapsymbol_ignore = false);
|
创建文本搜索配置:
1 |
CREATE TEXT SEARCH CONFIGURATION ngram2 (copy=ngram1) WITH (gram_size = 2, grapsymbol_ignore = false);
|
创建文本搜索配置:
1 |
CREATE TEXT SEARCH CONFIGURATION english_1 (parser=default);
|
父主题: DDL语法