Naked EXISTS vs SELECT EXISTS very different performance. - Mailing list pgsql-general

From Jimmy A
Subject Naked EXISTS vs SELECT EXISTS very different performance.
Date
Msg-id CANU97ysMJjzYUqo2COo7sZ=UcNrF1tHCbRAN40n3mMo-WSt7HQ@mail.gmail.com
Whole thread Raw
List pgsql-general
Hi everyone.

Can someone tell me why these two equivalent queries, one involving a "naked" EXISTS
versus one involving an EXISTS inside a SELECT statement perform so differently?
I can see that the slow one scans the entire child table while the fast one only scans children
that have the same parent_id as the parent. The tables have been vacuumed.
I have confirmed both give the same results across the whole table.

Setup is attached.

Cheers and regards.

Slow
https://explain.depesz.com/s/DzcK

Fast
https://explain.depesz.com/s/EftS
Attachment

pgsql-general by date:

Previous
From: Laurenz Albe
Date:
Subject: Re: Settings for a new machine - some guidance sought.
Next
From: Florents Tselai
Date:
Subject: Lazier alternative to row_to_json ?