aboutsummaryrefslogtreecommitdiff
path: root/doc/src/sgml/ref/drop_aggregate.sgml
blob: 9913e5d8ed363cc30da2c1e9fc8310cb4ecd1c4b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/ref/drop_aggregate.sgml,v 1.19 2002/07/12 18:43:12 tgl Exp $
PostgreSQL documentation
-->

<refentry id="SQL-DROPAGGREGATE">
 <refmeta>
  <refentrytitle id="SQL-DROPAGGREGATE-TITLE">DROP AGGREGATE</refentrytitle>
  <refmiscinfo>SQL - Language Statements</refmiscinfo>
 </refmeta>
 <refnamediv>
  <refname>
   DROP AGGREGATE
  </refname>
  <refpurpose>
   remove a user-defined aggregate function
  </refpurpose>
 </refnamediv>
 <refsynopsisdiv>
  <refsynopsisdivinfo>
   <date>1999-07-20</date>
  </refsynopsisdivinfo>
  <synopsis>
DROP AGGREGATE <replaceable class="PARAMETER">name</replaceable> ( <replaceable class="PARAMETER">type</replaceable> ) [ CASCADE | RESTRICT ]
  </synopsis>

  <refsect2 id="R2-SQL-DROPAGGREGATE-1">
   <refsect2info>
    <date>1998-04-15</date>
   </refsect2info>
   <title>
    Inputs
   </title>
   <para>
    <variablelist>
     <varlistentry>
      <term><replaceable class="parameter">name</replaceable></term>
      <listitem>
       <para>
	The name (optionally schema-qualified) of an existing aggregate function.
       </para>
      </listitem>
     </varlistentry>
     <varlistentry>
      <term><replaceable class="parameter">type</replaceable></term>
      <listitem>
       <para>
	The input data type of the aggregate function,
	or <literal>*</literal> if the function accepts any input type.
	(Refer to the <citetitle>PostgreSQL User's Guide</citetitle> for
	further information about data types.)
	<comment>This should become a cross-reference rather than a
	 hard-coded chapter number</comment>
       </para>
      </listitem>
     </varlistentry>
     <varlistentry>
      <term>CASCADE</term>
      <listitem>
       <para>
        Automatically drop objects that depend on the aggregate.
       </para>
      </listitem>
     </varlistentry>
     <varlistentry>
      <term>RESTRICT</term>
      <listitem>
       <para>
        Refuse to drop the aggregate if there are any dependent objects.
	This is the default.
       </para>
      </listitem>
     </varlistentry>
    </variablelist>
   </para>
  </refsect2>

  <refsect2 id="R2-SQL-DROPAGGREGATE-2">
   <refsect2info>
    <date>1998-04-15</date>
   </refsect2info>
   <title>
    Outputs
   </title>
   <para>
    <variablelist>
     <varlistentry>
      <term><computeroutput>
DROP AGGREGATE
       </computeroutput></term>
      <listitem>
       <para>
	Message returned if the command is successful.
       </para>
      </listitem>
     </varlistentry>
     <varlistentry>
      <term><computeroutput>
ERROR: RemoveAggregate: aggregate '<replaceable class="parameter">name</replaceable>' for type <replaceable class="parameter">type</replaceable> does not exist
       </computeroutput></term>
      <listitem>
       <para>
	This message occurs if the aggregate function specified does not
	exist in the database.
       </para>
      </listitem>
     </varlistentry>
    </variablelist>
   </para>
  </refsect2>
 </refsynopsisdiv>

 <refsect1 id="R1-SQL-DROPAGGREGATE-1">
  <refsect1info>
   <date>1998-04-15</date>
  </refsect1info>
  <title>
   Description
  </title>
  <para>
   <command>DROP AGGREGATE</command> will delete an existing
   aggregate definition. To execute this command the current
   user must be the owner of the aggregate.
  </para>

  <refsect2 id="R2-SQL-DROPAGGREGATE-3">
   <refsect2info>
    <date>1998-04-15</date>
   </refsect2info>
   <title>
    Notes
   </title>

   <para>
    Use
    <xref linkend="sql-createaggregate" endterm="sql-createaggregate-title">
    to create aggregate functions.
   </para>
  </refsect2>
 </refsect1>

 <refsect1 id="R1-SQL-DROPAGGREGATE-2">
  <title>
   Usage
  </title>
  <para>
   To remove the <literal>myavg</literal> aggregate for type
   <literal>int4</literal>:
  </para>
  <programlisting>
DROP AGGREGATE myavg(int4);
  </programlisting>
 </refsect1>

 <refsect1 id="R1-SQL-DROPAGGREGATE-3">
  <title>
   Compatibility
  </title>

  <refsect2 id="R2-SQL-DROPAGGREGATE-4">
   <refsect2info>
    <date>1998-04-15</date>
   </refsect2info>
   <title>
    SQL92
   </title>

   <para>
    There is no <command>DROP AGGREGATE</command> statement
    in <acronym>SQL92</acronym>; the statement is a
    <productname>PostgreSQL</productname>
    language extension.
   </para>
  </refsect2>
 </refsect1>
</refentry>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:nil
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"../reference.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:"/usr/lib/sgml/catalog"
sgml-local-ecat-files:nil
End:
-->