VastbaseE100

基于开源技术的HTAP数据库管理系统。性能优异,稳定可靠,提供诸多专属领域特性。

Menu

DROP AGGREGATE

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");

要在一个命令中删除多个聚合函数:

DROP AGGREGATE myavg(integer), myavg(bigint);