postgresql/src/backend/optimizer/path
Tom Lane bdfbfde1b1 IN clauses appearing at top level of WHERE can now be handled as joins.
There are two implementation techniques: the executor understands a new
JOIN_IN jointype, which emits at most one matching row per left-hand row,
or the result of the IN's sub-select can be fed through a DISTINCT filter
and then joined as an ordinary relation.
Along the way, some minor code cleanup in the optimizer; notably, break
out most of the jointree-rearrangement preprocessing in planner.c and
put it in a new file prep/prepjointree.c.
2003-01-20 18:55:07 +00:00
..
allpaths.c IN clauses appearing at top level of WHERE can now be handled as joins. 2003-01-20 18:55:07 +00:00
clausesel.c
costsize.c IN clauses appearing at top level of WHERE can now be handled as joins. 2003-01-20 18:55:07 +00:00
indxpath.c IN clauses appearing at top level of WHERE can now be handled as joins. 2003-01-20 18:55:07 +00:00
joinpath.c IN clauses appearing at top level of WHERE can now be handled as joins. 2003-01-20 18:55:07 +00:00
joinrels.c IN clauses appearing at top level of WHERE can now be handled as joins. 2003-01-20 18:55:07 +00:00
Makefile
orindxpath.c
pathkeys.c
tidpath.c