Re: [PATCH] GROUP BY ALL
Pavel Stehule <pavel.stehule@gmail.com>
From: Pavel Stehule <pavel.stehule@gmail.com>
To: Jelte Fennema-Nio <postgres@jeltef.nl>
Cc: David Christensen <david@pgguru.net>,
pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2024-07-24T09:07:21Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Add GROUP BY ALL.
- ef38a4d9756d 19 (unreleased) landed
-
Refactor to avoid code duplication in transformPLAssignStmt.
- b0fb2c6aa5a4 19 (unreleased) landed
-
Fix missed copying of groupDistinct in transformPLAssignStmt.
- b7f6798c056a 16.11 landed
- 9ca79896aba3 15.15 landed
- 78a284b0b8d4 18.1 landed
- 7504d2be9eb4 19 (unreleased) landed
- 3fc9aa5b0233 17.7 landed
- 0be39b4b1a01 14.20 landed
Hi st 24. 7. 2024 v 10:57 odesílatel Jelte Fennema-Nio <postgres@jeltef.nl> napsal: > On Mon, 22 Jul 2024 at 22:55, David Christensen <david@pgguru.net> wrote: > > I see that there'd been some chatter but not a lot of discussion about > > a GROUP BY ALL feature/functionality. There certainly is utility in > > such a construct IMHO. > > +1 from me. When exploring data, this is extremely useful because you > don't have to update the GROUP BY clause every time > > Regarding the arguments against this: > 1. I don't think this is any more unreadable than being able to GROUP > BY 1, 2, 3. Or being able to use column aliases from the SELECT in the > GROUP BY clause. Again this is already allowed. Personally I actually > think it's more readable than specifying e.g. 5 columns in the group > by, because then I have to cross-reference with columns in the SELECT > clause to find out if they are the same. With ALL I instantly know > it's grouped by all > 2. This is indeed not part of the standard. But we have many things > that are not part of the standard. I think as long as we use the same > syntax as snowflake, databricks and duckdb I personally don't see a > big problem. Then we could try and make this be part of the standard > in the next version of the standard. > Aggregation against more columns is pretty slow and memory expensive in Postgres. DuckDB is an analytic database with different storage, different executors. I like it very much, but I am not sure if I want to see these features in Postgres. Lot of developers are not very smart, and with proposed feature, then instead to write correct and effective query, then they use just GROUP BY ALL. Slow query should look like a slow query :-) Regards Pavel