他のバージョンの文書 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

名前

DROP AGGREGATE — 集約関数を削除する

概要

DROP AGGREGATE [ IF EXISTS ] name ( aggregate_signature ) [ CASCADE | RESTRICT ]

ここでaggregate_signatureは以下の通りです。

* |
[ argmode ] [ argname ] argtype [ , ... ] |
[ [ argmode ] [ argname ] argtype [ , ... ] ] ORDER BY [ argmode ] [ argname ] argtype [ , ... ]

説明

DROP AGGREGATEを実行すると、既存の集約関数定義を削除することができます。 このコマンドを実行するには、現在のユーザがその集約関数を所有している必要があります。

パラメータ

IF EXISTS

集約が存在しない場合でもエラーになりません。 この場合注意メッセージが発行されます。

name

既存の集約関数の名前です(スキーマ修飾名も可)。

argmode

引数のモードで、INまたはVARIADICです。 省略した場合のデフォルトはINです。

argname

引数の名前です。 DROP AGGREGATEは実際には引数の名前を無視することに注意してください。 これは、集約関数の本体を特定するのに必要になるのは、引数のデータ型だけだからです。

argtype

集約関数の操作対象となる入力データ型です。 引数を持たない関数を参照する場合は、引数指定の一覧の場所に*を記述してください。 順序集合集約関数を参照する場合は、直接引数と集約引数の指定の間にORDER BYを記述してください。

CASCADE

その集約関数に依存しているオブジェクトを自動的に削除します。

RESTRICT

依存しているオブジェクトがある場合、その集約関数の削除要求を拒否します。 こちらがデフォルトです。

注釈

順序集合集約を参照するための代替となる構文については、ALTER AGGREGATEに記述されています。

integer型のmyavg集約関数を削除します。

DROP AGGREGATE myavg(integer);

順序列の任意のリストと直接引数の適合するリストをとる、仮想集合集約関数myrankを削除します。

DROP AGGREGATE myrank(VARIADIC "any" ORDER BY VARIADIC "any");

互換性

標準SQLには、DROP AGGREGATE文はありません。

関連項目

ALTER AGGREGATE, CREATE AGGREGATE