• T
    IN clauses appearing at top level of WHERE can now be handled as joins. · bdfbfde1
    Tom Lane 提交于
    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.
    bdfbfde1
outfuncs.c 34.4 KB