DROP AGGREGATE — Supprimer une fonction d'agrégat
DROP AGGREGATE [ IF EXISTS ]nom
(signature_agrégat
) [, ...] [ CASCADE | RESTRICT ] wheresignature_agrégat
is: * | [mode_arg
] [nom_arg
]type_arg
[ , ... ] | [ [mode_arg
] [nom_arg
]type_arg
[ , ... ] ] ORDER BY [mode_arg
] [nom_arg
]type_arg
[ , ... ]
DROP AGGREGATE
supprime une fonction d'agrégat.
Pour exécuter cette commande, l'utilisateur courant doit être le
propriétaire de la fonction.
IF EXISTS
Ne pas renvoyer une erreur si l'agrégat n'existe pas. Un message d'avertissement est affiché dans ce cas.
nom
Le nom (éventuellement qualifié du nom de schéma) d'une fonction d'agrégat.
mode_arg
Le mode d'un argument : IN
ou VARIADIC
.
Si non précisé, la valeur par défaut est IN
.
nom_arg
Le nom d'un argument.
Notez que DROP AGGREGATE
ne se préoccupe pas
du nom de l'argument, puisque seul le type de donnée de l'argument est
nécessaire pour déterminer l'identité de la fonction d'aggrégat.
type_arg
Un type de données en entrée avec lequel la fonction d'agrégat opère.
Pour référencer une fonction d'agrégat sans arguments, écrivez
*
à la place de la liste des spécifications d'argument.
Pour référencer une fonction d'agrégat d'ensemble trié, écrivez
ORDER BY
entre les spécifications des arguments directs
et des arguments agrégés.
CASCADE
Les objets qui dépendent de la fonction d'agrégat sont automatiquement supprimés, ainsi que tous les objets dépendants de ces objets (voir Section 5.13).
RESTRICT
La fonction d'agrégat n'est pas supprimée si un objet en dépend. Comportement par défaut.
Les syntaxes alternatives pour référencer des agrégats de tri d'ensemble sont décrits sur ALTER AGGREGATE.
Supprimer la fonction d'agrégat mamoyenne
pour le
type integer
:
DROP AGGREGATE mamoyenne(integer);
Pour supprimer la fonction d'agrégat d'ensemble hypothétique
monrang
, qui prend une liste arbitraire de colonnes pour
le tri et une liste de comparaison des arguments directs :
DROP AGGREGATE monrang(VARIADIC "any" ORDER BY VARIADIC "any");
Pour supprimer plusieurs fonctions d'agrégat en une seule commande :
DROP AGGREGATE myavg(integer), myavg(bigint);
Il n'existe pas d'instruction DROP AGGREGATE
dans le
standard SQL.