全部產品
Search
文件中心

PolarDB:DROP AGGREGATE

更新時間:Jul 06, 2024

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 [ , ... ]

參數

  • IF EXISTS如果該聚集不存在則不要拋出一個錯誤,而是發出一個提示。

  • name一個現有聚集合函式的名稱(可以是模式限定的)。

  • argmode一個參數的模式:INVARIADIC。 如果被忽略,預設值是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);