summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2025-03-10 10:22:08 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2025-03-10 10:22:26 -0400
commit2db974e40df64b946e172736547f001162439149 (patch)
tree61c5af3215756ca4e723583956390a5261bb236b
parente2921c0e9de3c153b9d75d1fcf219afce42f64c7 (diff)
Doc: improve description of window function processing.
The previous wording talked about a "single pass over the data", which can be read as promising more than intended (to wit, that only one WindowAgg plan node will be used). What we promise is only what the SQL spec requires, namely that the data not get re-sorted between window functions with compatible PARTITION BY/ORDER BY clauses. Adjust the wording in hopes of making this clearer. Reported-by: Christopher Inokuchi <cinokuchi@gmail.com> Author: Tom Lane <tgl@sss.pgh.pa.us> Reviewed-by: David G. Johnston <david.g.johnston@gmail.com> Discussion: https://postgr.es/m/CABde6B5va2wMsnM79u_x=n9KUgfKQje_pbLROEBmA9Ru5XWidw@mail.gmail.com Backpatch-through: 13
-rw-r--r--doc/src/sgml/queries.sgml8
1 files changed, 4 insertions, 4 deletions
diff --git a/doc/src/sgml/queries.sgml b/doc/src/sgml/queries.sgml
index c0d841531cb..22cd84c466f 100644
--- a/doc/src/sgml/queries.sgml
+++ b/doc/src/sgml/queries.sgml
@@ -1455,10 +1455,10 @@ GROUP BY GROUPING SETS (
<para>
When multiple window functions are used, all the window functions having
- syntactically equivalent <literal>PARTITION BY</literal> and <literal>ORDER BY</literal>
- clauses in their window definitions are guaranteed to be evaluated in a
- single pass over the data. Therefore they will see the same sort ordering,
- even if the <literal>ORDER BY</literal> does not uniquely determine an ordering.
+ equivalent <literal>PARTITION BY</literal> and <literal>ORDER BY</literal>
+ clauses in their window definitions are guaranteed to see the same
+ ordering of the input rows, even if the <literal>ORDER BY</literal> does
+ not uniquely determine the ordering.
However, no guarantees are made about the evaluation of functions having
different <literal>PARTITION BY</literal> or <literal>ORDER BY</literal> specifications.
(In such cases a sort step is typically required between the passes of