Skip to content
Snippets Groups Projects
Select Git revision
  • benchmark-tools
  • postgres-lambda
  • master default
  • REL9_4_25
  • REL9_5_20
  • REL9_6_16
  • REL_10_11
  • REL_11_6
  • REL_12_1
  • REL_12_0
  • REL_12_RC1
  • REL_12_BETA4
  • REL9_4_24
  • REL9_5_19
  • REL9_6_15
  • REL_10_10
  • REL_11_5
  • REL_12_BETA3
  • REL9_4_23
  • REL9_5_18
  • REL9_6_14
  • REL_10_9
  • REL_11_4
23 results

nodeSubplan.c

  • Tom Lane's avatar
    f68e11f3
    Implement subselects in target lists. Also, relax requirement that · f68e11f3
    Tom Lane authored
    subselects can only appear on the righthand side of a binary operator.
    That's still true for quantified predicates like x = ANY (SELECT ...),
    but a subselect that delivers a single result can now appear anywhere
    in an expression.  This is implemented by changing EXPR_SUBLINK sublinks
    to represent just the (SELECT ...) expression, without any 'left hand
    side' or combining operator --- so they're now more like EXISTS_SUBLINK.
    To handle the case of '(x, y, z) = (SELECT ...)', I added a new sublink
    type MULTIEXPR_SUBLINK, which acts just like EXPR_SUBLINK used to.
    But the grammar will only generate one for a multiple-left-hand-side
    row expression.
    f68e11f3
    History
    Implement subselects in target lists. Also, relax requirement that
    Tom Lane authored
    subselects can only appear on the righthand side of a binary operator.
    That's still true for quantified predicates like x = ANY (SELECT ...),
    but a subselect that delivers a single result can now appear anywhere
    in an expression.  This is implemented by changing EXPR_SUBLINK sublinks
    to represent just the (SELECT ...) expression, without any 'left hand
    side' or combining operator --- so they're now more like EXISTS_SUBLINK.
    To handle the case of '(x, y, z) = (SELECT ...)', I added a new sublink
    type MULTIEXPR_SUBLINK, which acts just like EXPR_SUBLINK used to.
    But the grammar will only generate one for a multiple-left-hand-side
    row expression.