Improving inferred query column names

From: Andres Freund <andres(at)anarazel(dot)de>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Improving inferred query column names
Date: 2023-02-11 19:24:20
Message-ID: 20230211192420.d4bvhrfys4tynpae@awork3.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

A common annoyance when writing ad-hoc analytics queries is column naming once
aggregates are used.

Useful column names:
SELECT reads, writes FROM pg_stat_io;
column names: reads, writes

Not useful column names:
SELECT SUM(reads), SUM(writes) FROM pg_stat_io;
column names: sum, sum

So i often end up manually writing:
SELECT SUM(reads) AS sum_reads, SUM(writes) AS sum_writes, ... FROM pg_stat_io;

Of course we can't infer useful column names for everything, but for something
like this, it should't be too hard to do better. E.g. by combining the
function name with the column name in the argument, if a single plain column
is the argument.

I think on a green field it'd be clearly better to do something like the
above. What does give me pause is that it seems quite likely to break
existing queries, and to a lesser degree, might break applications relying on
inferred column names

Can anybody think of a good way out of that? It's not like that problem is
going to go away at some point...

Greetings,

Andres Freund

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andres Freund 2023-02-11 20:29:59 Re: Sort optimizations: Making in-memory sort cache-aware
Previous Message Andres Freund 2023-02-11 18:24:37 Re: pg_stat_bgwriter.buffers_backend is pretty meaningless (and more?)