Re: Optimize SELECT * in EXISTS - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: Optimize SELECT * in EXISTS
Date
Msg-id 88a5b7c5-ae5e-4dd7-aec9-a87b7f5f0e88@eisentraut.org
Whole thread Raw
In response to Re: Optimize SELECT * in EXISTS  (David Rowley <dgrowleyml@gmail.com>)
Responses Re: Optimize SELECT * in EXISTS
List pgsql-hackers
On 23.02.26 09:41, David Rowley wrote:
> On Mon, 23 Feb 2026 at 21:21, Peter Eisentraut <peter@eisentraut.org> wrote:
>> I read in the SQL standard that SELECT * in EXISTS is not supposed to be
>> expanded to all columns, but only to an arbitrary literal.  This
>> corresponds to the recommendation in the PostgreSQL documentation to
>> write EXISTS (SELECT 1 ...) instead.  But not even our own tests and
>> example code use that latter convention consistently, so I think many
>> users don't know it or observe it either.  So implementing that little
>> optimization for SELECT * seems reasonable.
> 
>> Thoughts?
> 
> Don't we already do this in simplify_EXISTS_query()?

It appears so, but then I think we should update the documentation along 
the lines I showed, because I found it misleading about this.  New 
docs-only patch attached.


Attachment

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: centralize CPU feature detection
Next
From: Zsolt Parragi
Date:
Subject: Re: pg_dumpall --roles-only interact with other options