Re: [PATCH] GROUP BY ALL - Mailing list pgsql-hackers

From David Christensen
Subject Re: [PATCH] GROUP BY ALL
Date
Msg-id CAHM0NXgVfYYt1Yw6iVqGY9PZ=dVPe6HhEByH9uD-H-AA0z_1Zg@mail.gmail.com
Whole thread Raw
In response to Re: [PATCH] GROUP BY ALL  ("David G. Johnston" <david.g.johnston@gmail.com>)
Responses Re: [PATCH] GROUP BY ALL
List pgsql-hackers
On Mon, Jul 22, 2024 at 4:34 PM David G. Johnston
<david.g.johnston@gmail.com> wrote:
>
> On Mon, Jul 22, 2024 at 1:55 PM 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.
>>
>> Still need some docs; just throwing this out there and getting some feedback.
>>
>
> I strongly dislike adding this feature.  I'd only consider supporting it if it was part of the SQL standard.
>
> Code is written once and read many times.  This feature caters to the writer, not the reader.  And furthermore usage
ofthis is prone to be to the writer's detriment as well. 

I'd say this feature (at least for me) caters to the investigator;
someone who is interactively looking at data hence why it would cater
to the writer.  Consider acquainting yourself with a large table that
has a large number of annoying-named fields where you want to look at
how different data is correlated or broken-down.  Something along the
lines of:

SELECT last_name, substring(first_name,1,1) as first_initial,
income_range, count(*) FROM census_data GROUP BY ALL;

If you are iteratively looking at things, adding or removing fields
from your breakdown, you only need to change it in a single place, the
tlist.  Additionally, expressions can be used transparently without
needing to repeat them.  (Yes, in practice, I'd often use GROUP BY 1,
2, say, but if you add more fields to this you need to edit in
multiple places.)

David



pgsql-hackers by date:

Previous
From: Heikki Linnakangas
Date:
Subject: Re: Comments on Custom RMGRs
Next
From: Jacob Champion
Date:
Subject: Re: Document use of ldapurl with LDAP simple bind