Обсуждение: JOIN Record returning Function

Поиск
Список
Период
Сортировка

JOIN Record returning Function

От
Daniel Schuchardt
Дата:
Hy Group,

i have a function that returns a record.

myfunc(IN id INTEGER) RETURNS RECORD.

in that function the record is build from some subquery's in dependence of data.

Now i need to join that function to its correponding main table that holds the id.

SELECT myfunc.* FROM maintable JOIN myfunc(maintable.pk) ON true WHERE maintable.field=statisticdata;

ERROR:  invalid reference to FROM-clause entry for table "maintable"
TIP:  There is an entry for table "maintable", but it cannot be referenced from this part of the query.

so far so good, thats clear. But does anyone know a tricky solution for that problem?
--

Daniel Schuchardt
Softwareentwicklung

http://www.prodat-sql.de

Re: JOIN Record returning Function

От
Tim Landscheidt
Дата:
Daniel Schuchardt <d.schuchardt@prodat-sql.de> wrote:

> i have a function that returns a record.

> myfunc(IN id INTEGER) RETURNS RECORD.

> in that function the record is build from some subquery's in
> dependence of data.

> Now i need to join that function to its correponding main
> table that holds the id.

> SELECT myfunc.* FROM maintable JOIN myfunc(maintable.pk) ON
> true WHERE maintable.field=statisticdata;

> ERROR:  invalid reference to FROM-clause entry for table "maintable"
> TIP:  There is an entry for table "maintable", but it cannot
> be referenced from this part of the query.

> so far so good, thats clear. But does anyone know a tricky
> solution for that problem?

"SELECT myfunc(pk) FROM maintable WHERE field =
statisticdata;"?

Tim