Re: Clarify note about DISTINCT and ORDER BY in aggregates - Mailing list pgsql-docs

From David G. Johnston
Subject Re: Clarify note about DISTINCT and ORDER BY in aggregates
Date
Msg-id CAKFQuwaJPagpmghUJcxiVyyW4bZMZ+AA9uXiFJKH3ng+QwSdaQ@mail.gmail.com
Whole thread Raw
In response to Clarify note about DISTINCT and ORDER BY in aggregates  (Vik Fearing <vik@postgresfriends.org>)
List pgsql-docs
On Thu, Dec 8, 2022 at 5:31 AM Vik Fearing <vik@postgresfriends.org> wrote:
The current docs can be read as using DISTINCT in an aggregate
(count(distinct col)) and ORDER BY (array_agg(col ORDER BY col)) are
both extensions to the standard.

The actual truth is that our extension to the standard is to allow both
at the same time.

Attached is a trivial patch to make that more clear.  I don't know if
pgindent works on the docs so I made this so as to show what is
changing.  I can submit a properly formatted patch, or let the eventual
committer make that change if necessary.

From the other thread this still is off compared to reality, which you described as:

"The SQL Standard defines whether DISTINCT or ORDER BY are accepted on a per-aggregate basis.  It is a PostgreSQL extension that any aggregate can specify these clauses."

The fact that no SQL Standard aggregate happens to specify both DISTINCT and ORDER BY at the same time is a detail we don't need to cover.  We aren't documenting the per-aggregate variances.

David J.

pgsql-docs by date:

Previous
From: Laurenz Albe
Date:
Subject: Re: nextval parameter is not clear
Next
From: PG Doc comments form
Date:
Subject: Minor typo in sentence saving visits to heap