CREATE TEXT SEARCH CONFIGURATION
Function
CREATE TEXT SEARCH CONFIGURATION creates a text search configuration.
A text search configuration uses a text search parser to divide a string into tokens, and then uses dictionaries to determine which tokens are of interest for searching. This meets search requirements and improves the efficiency of full-text search.
Precautions
- If only the parser is specified, then the new text search configuration initially has no mappings from token types to dictionaries, and therefore will ignore all words. Subsequent ALTER TEXT SEARCH CONFIGURATION commands must be used to create mappings to make the configuration useful. If COPY option is specified, the parser, mapping and configuration option of text search configuration is copied automatically.
- If a schema name is specified, the text search configuration is created in the specified schema. Otherwise, the text search configuration is created in the current schema.
- The user who defines a text search configuration becomes its owner.
- PARSER and COPY options are mutually exclusive, because when an existing configuration is copied, its parser configuration is also copied.
Syntax
1 2 3 | CREATE TEXT SEARCH CONFIGURATION name ( PARSER = parser_name | COPY = source_config ) [ WITH ( {configuration_option = value} [, ...] )]; |
Parameter Description
| Parameter | Description | Value Range |
|---|---|---|
| name | Specifies the name (optionally schema-qualified) of the text search configuration to be created. | A string, which must comply with the naming convention. |
| parser_name | Specifies the name of the text search parser to use for this configuration. | Currently, the default, ngram, and zhparser parsers are supported.
|
| source_config | Specifies the name of an existing text search configuration to copy. | - |
| configuration_option | Specifies the options of the text search configuration. It is used to configure options for the specified parser (parser_name parser or source_config hidden parser), thereby optimizing the word segmentation logic. |
|
| Parser | Parameters for adding an account | Description | Value Range |
|---|---|---|---|
| ngram | gram_size | Length of word segmentation | Integer, 1 to 4 Default value: 2 |
| punctuation_ignore | Whether to ignore punctuations |
| |
| grapsymbol_ignore | Whether to ignore graphical characters |
| |
| zhparser | punctuation_ignore | Whether to ignore special characters including punctuations (\r and \n will not be ignored) in the word segmentation result |
|
| seg_with_duality | Whether to aggregate segments with duality |
| |
| multi_short | Whether to execute long words composite divide |
| |
| multi_duality | Whether to aggregate segments in long words with duality |
| |
| multi_zmain | Whether to display key single words individually |
| |
| multi_zall | Whether to display all single words individually. |
|
Examples
Create a text search configuration named ngram1. (Use the ngram parser, set the word segmentation length to two characters, and retain graphical characters in the text.)
1 2 | DROP TEXT SEARCH CONFIGURATION IF EXISTS ngram1; CREATE TEXT SEARCH CONFIGURATION ngram1 (parser=ngram) WITH (gram_size = 2, grapsymbol_ignore = false); |
Create a text search configuration named ngram2. (Copy all parameters of the existing configuration ngram1.)
1 2 | DROP TEXT SEARCH CONFIGURATION IF EXISTS ngram2; CREATE TEXT SEARCH CONFIGURATION ngram2 (copy=ngram1); |
Create a text search configuration named english_1. (Use the default text parser.)
1 2 | DROP TEXT SEARCH CONFIGURATION IF EXISTS english_1; CREATE TEXT SEARCH CONFIGURATION english_1 (parser=default); |
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot