On Tue, Jan 6, 2026 at 10:47 AM Tender Wang <[email protected]> wrote: > ... > SELECT ... FROM a LEFT JOIN b ON (a.x = b.y) WHERE b.z IS NULL; > * If we can prove that b.z must be non-null for any matching row, either > * because the join clause is strict for b.z, or because b.z is defined NOT > * NULL by table constraints, > ... > How can the strict join clause influence b.z?
The logic 'strict for b.z' effectively applies only if b.z happens to be the join key b.y. To avoid confusion, I have rephrased the comment to make this distinction clear. I've also included a commit message, refined the comments throughout, and added test cases in the updated patch. Feedback and testing are very welcome. - Richard
v6-0001-Reduce-LEFT-JOIN-to-ANTI-JOIN-using-NOT-NULL-cons.patch
Description: Binary data
