CREATE OPERATOR CLASS |
Créer une classe d'opérateur |
---|---|
PostgreSQL |
Syntaxe
CREATE OPERATOR CLASS name [ DEFAULT ] FOR TYPE data_type USING index_method [ FAMILY family_name ] AS { OPERATOR strategy_number operator_name [ ( op_type, op_type ) ] [ FOR SEARCH | FOR ORDER BY sort_family_name ] | FUNCTION support_number [ ( op_type [ , op_type ] ) ] function_name ( argument_type [, ...] ) | STORAGE storage_type } [, ... ] |
Paramètres
Nom | Description |
---|---|
name | Ce paramètre permet d'indiquer le nom de la classe d'opérateurs à créer. Le nom peut être qualifié de schéma. |
DEFAULT | Ce paramètre permet d'indiquer, s'il est présent, que la classe d'opérateur deviendra la classe d'opérateur par défaut pour son type de données. Au plus une classe d'opérateur peut être la valeur par défaut pour un type de données et une méthode d'indexation spécifiques. |
data_type | Ce paramètre permet d'indiquer le type de données de colonne auquel cette classe d'opérateurs est destinée. |
index_method | Ce paramètre permet d'indiquer le nom de la méthode d'indexation pour cette classe d'opérateur. |
family_name | Ce paramètre permet d'indiquer le nom de la famille d'opérateurs existante à laquelle ajouter cette classe d'opérateurs. Si non spécifié, une famille nommée de la même manière que la classe d'opérateur est utilisée (en la créant, si elle n'existe pas déjà). |
strategy_number | Ce paramètre permet d'indiquer le numéro de stratégie de la méthode d'indexation pour un opérateur associé à la classe d'opérateur. |
operator_name | Ce paramètre permet d'indiquer le nom (éventuellement qualifié par le schéma) d'un opérateur associé à la classe d'opérateur. |
op_type | Ce paramètre permet d'indiquer le type d'opérateur. Dans une clause OPERATOR, le(s) type(s) de données d'opérande de l'opérateur, ou NONE pour signifier un opérateur unaire gauche ou unaire droite. Les types de données d'opérande peuvent être omis dans le cas normal où ils sont identiques au type de données de la classe d'opérateur. Dans une clause FUNCTION, le(s) type(s) de données d'opérande que la fonction est censée prendre en charge, s'il est différent du ou des types de données d'entrée de la fonction (pour les fonctions de comparaison B-tree et les fonctions de hachage) ou le type de données de la classe (pour les fonctions de prise en charge du tri par B-tree et toutes les fonctions des classes d'opérateurs GiST, SP-GiST, GIN et BRIN). Ces valeurs par défaut sont correctes, et donc op_type n'a pas besoin d'être spécifié dans les clauses FUNCTION, sauf dans le cas d'une fonction de support de tri B-tree étant censée prendre en charge les comparaisons de types de données croisées. |
sort_family_name | Ce paramètre permet d'indiquer le nom (éventuellement qualifié par le schéma) d'une famille d'opérateurs B-tree existante décrivant l'ordre de tri associé à un opérateur de classement. Si ni FOR SEARCH ni FOR ORDER BY n'est spécifié, FOR SEARCH est la valeur par défaut. |
support_number | Ce paramètre permet d'indiquer le numéro de procédure de support de la méthode d'indexation pour une fonction associée à la classe d'opérateur. |
function_name | Ce paramètre permet d'indiquer le nom (éventuellement qualifié par le schéma) d'une fonction étant une procédure de prise en charge de la méthode d'indexation pour la classe d'opérateur. |
argument_type | Ce paramètre permet d'indiquer le(s) type(s) de données de paramètre de la fonction. |
storage_type | Ce paramètre permet d'indiquer le type de données actuellement entreposé dans l'index. Normalement, c'est le même que le type de données de colonne, mais certaines méthodes d'indexation (actuellement GiST, GIN et BRIN) permettent qu'il soit différent. La clause STORAGE doit être omise sauf si la méthode d'indexation autorise l'utilisation d'un type différent. Si la colonne data_type est spécifiée comme anyarray, le storage_type peut être déclaré comme anyelement pour indiquer que les entrées d'index sont des membres du type d'élément appartenant au type de tableau réel pour lequel chaque index particulier est créé. |
Description
Cette instruction permet de définir une nouvelle classe d'opérateur.
Dernière mise à jour : Jeudi, le 14 Octobre 2021