Re: SELECT List with/without parentheses

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: jason(at)starnull(dot)net
Cc: pgsql-docs(at)lists(dot)postgresql(dot)org
Subject: Re: SELECT List with/without parentheses
Date: 2025-09-05 21:17:02
Message-ID: 1529415.1757107022@sss.pgh.pa.us
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-docs

PG Doc comments form <noreply(at)postgresql(dot)org> writes:
> There is no mention of the difference in PostgreSql behavior if the select
> list of columns is surrounded by parentheses or not.

What you've written there is an implicit row constructor, that is
"(a,b,...)" is taken as "ROW(a,b,...)". These are documented at [1],
but it would be quite unwieldy to point out the possibility of this
for every context in which it could be written.

Personally I think implicit row constructors were one of the SQL
committee's worst ideas, precisely because of the surprise factor.
But it's in the standard so we're stuck with it.

regards, tom lane

[1] https://www.postgresql.org/docs/current/sql-expressions.html#SQL-SYNTAX-ROW-CONSTRUCTORS

In response to

Browse pgsql-docs by date

  From Date Subject
Previous Message David G. Johnston 2025-09-05 21:11:32 Re: SELECT List with/without parentheses