Thread: Naked EXISTS vs SELECT EXISTS very different performance.

Naked EXISTS vs SELECT EXISTS very different performance.

From
Jimmy A
Date:
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