Andrew Gierth wrote:
> >>>>> "Bruce" == Bruce Momjian <bruce@momjian.us> writes:
>
> >> 1) select ... from foo, unnest(foo.bar); -- UNNEST is implicitly LATERAL
> [...]
> >> It's point (1) that's the killer - without it, unnest() is just a
> >> trivial shorthand for stuff that can be done anyway; it doesn't
> >> actually add any functionality.
>
> Bruce> OK, so what should the TODO wording be?
>
> Under "SQL Commands":
>
> * implement LATERAL (and corresponding UNNEST functionality)
>
> (LATERAL is, I suspect, a fairly big project because of the amount of
> planner work involved, but it's also a fairly high-value project
> because (a) it's useful (we usually get a couple of cases every week
> on the IRC chan where people ask "how do I do X", where X would be
> trivial with LATERAL but requires complex and often inefficient SQL
> without it), and (b) it potentially presents optimization
> opportunities even for queries that don't use it.)
Added to TODO:
Support LATERAL subqueries Lateral subqueries can reference columns of tables defined outsidethe subquery at the
samelevel. For example, a LATERAL subquery in aFROM clause could reference tables defined in the same FROM
clause.Currentlyonly the columns of tables defined above subqueries arerecognized.
-- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB
http://enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +