Re: [PATCHES] targetlist functions part 1 (was targetlist

Поиск
Список
Период
Сортировка
От Peter Eisentraut
Тема Re: [PATCHES] targetlist functions part 1 (was targetlist
Дата
Msg-id Pine.LNX.4.44.0301221924180.789-100000@localhost.localdomain
обсуждение исходный текст
Ответы Re: [PATCHES] targetlist functions part 1 (was targetlist  (Peter Eisentraut <peter_e@gmx.net>)
Список pgsql-hackers
Tom Lane writes:

> > With sufficiently blurred vision one might even find SQL99's clause
> >          <collection derived table> ::=
> >               UNNEST <left paren> <collection value expression> <right paren>
> > applicable.  Or maybe not.
>
> Hm.  I'm not sure what UNNEST does, but now that you bring SQL99 into
> the picture, what about WITH?  That might solve the problem, because
> (I think) WITH tables are logically determined before the main SELECT
> begins to execute.

The SQL 200x draft defines a new clause TABLE ( <collection value
expression> ) as a possible <table primary>, where the <collection value
expression> is required to be a function call.  At the end this just boils
down to UNNEST, though.  UNNEST is defined in terms of a hairy recursive
join subquery with a LATERAL( ) around it.  LATERAL(subquery) is the same
as just (subquery) except that the scope clauses are different.  So I
think this is probably what we ought to look at.

-- 
Peter Eisentraut   peter_e@gmx.net



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Viacheslav N Tararin
Дата:
Сообщение: WIn32 port
Следующее
От: Peter Eisentraut
Дата:
Сообщение: Re: Win32 port patches submitted