Doc: update documentation for requirement of ORDER BY in GROUPS mode.

Commit ff4f88916 adjusted the code to enforce the SQL spec's requirement
that a window using GROUPS mode must have an ORDER BY clause.  But I missed
that the documentation explicitly said you didn't have to have one.

Also minor wordsmithing in the window-function section of select.sgml.

Per Masahiko Sawada, though I didn't use his patch.
This commit is contained in:
Tom Lane 2018-07-12 11:10:24 -04:00
parent 8e599897ca
commit e0cd0ea4f9
2 changed files with 5 additions and 5 deletions

View File

@ -901,8 +901,8 @@ EXCLUDE NO OTHERS
CURRENT ROW</literal>; it sets the frame to be all rows from the partition start CURRENT ROW</literal>; it sets the frame to be all rows from the partition start
up through the current row's last <firstterm>peer</firstterm> (a row up through the current row's last <firstterm>peer</firstterm> (a row
that the window's <literal>ORDER BY</literal> clause considers that the window's <literal>ORDER BY</literal> clause considers
equivalent to the current row), or all rows if there equivalent to the current row; all rows are peers if there
is no <literal>ORDER BY</literal>. is no <literal>ORDER BY</literal>).
In general, <literal>UNBOUNDED PRECEDING</literal> means that the frame In general, <literal>UNBOUNDED PRECEDING</literal> means that the frame
starts with the first row of the partition, and similarly starts with the first row of the partition, and similarly
<literal>UNBOUNDED FOLLOWING</literal> means that the frame ends with the last <literal>UNBOUNDED FOLLOWING</literal> means that the frame ends with the last
@ -924,7 +924,7 @@ EXCLUDE NO OTHERS
is an integer indicating that the frame starts or ends that many peer is an integer indicating that the frame starts or ends that many peer
groups before or after the current row's peer group, where groups before or after the current row's peer group, where
a <firstterm>peer group</firstterm> is a group of rows that are a <firstterm>peer group</firstterm> is a group of rows that are
equivalent according to <literal>ORDER BY</literal>. equivalent according to the window's <literal>ORDER BY</literal> clause.
In <literal>RANGE</literal> mode, use of In <literal>RANGE</literal> mode, use of
an <replaceable>offset</replaceable> option requires that there be an <replaceable>offset</replaceable> option requires that there be
exactly one <literal>ORDER BY</literal> column in the window definition. exactly one <literal>ORDER BY</literal> column in the window definition.

View File

@ -1917,8 +1917,8 @@ EXCLUDE NO OTHERS
ends the specified number of <firstterm>peer groups</firstterm> ends the specified number of <firstterm>peer groups</firstterm>
before or after the current row's peer group, where a peer group is a before or after the current row's peer group, where a peer group is a
set of rows that are equivalent in the <literal>ORDER BY</literal> set of rows that are equivalent in the <literal>ORDER BY</literal>
ordering. (If there is no <literal>ORDER BY</literal>, the whole ordering. (There must be an <literal>ORDER BY</literal> clause
partition is one peer group.) in the window definition to use <literal>GROUPS</literal> mode.)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>