Обсуждение: problem with selecting from a function

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

problem with selecting from a function

От
Andreas
Дата:
Hi,

I've got a table with a couple of objects.
Primary key object_id.

There is a function that fetches some values from another table that 
relate to an object_id.
Like   fctX ( 7 )  --> set of typX ... ( 14, 'bla' ), ( 17, 'blu' ), ( 
21, 'ble' ), ...
The result of the function can have 0 or more lines of a defined 
result-type typX.
Those resulting numbers are not object_ids.

Now I'd need a SELECT that lists all function results of all object_ids.
Like:
...
6, ...
7, 14, 'bla'
7, 17, 'blu'
7, 21, 'ble'
8, ...

Actually it was enough to get just the numerical column of the function 
result.

I tried
select object_id, fctX (object_id) from objects;
Then I get:
7, (14, 'bla')
7, (17, 'blu')
7, (21, 'ble') <--- round brackets
This looks like an array but how can I split it up to columns or at 
least extract the number-column?


Re: problem with selecting from a function

От
Pavel Stehule
Дата:
2011/6/21 Andreas <maps.on@gmx.net>:
> Hi,
>
> I've got a table with a couple of objects.
> Primary key object_id.
>
> There is a function that fetches some values from another table that relate
> to an object_id.
> Like   fctX ( 7 )  --> set of typX ... ( 14, 'bla' ), ( 17, 'blu' ), ( 21,
> 'ble' ), ...
> The result of the function can have 0 or more lines of a defined result-type
> typX.
> Those resulting numbers are not object_ids.
>
> Now I'd need a SELECT that lists all function results of all object_ids.
> Like:
> ...
> 6, ...
> 7, 14, 'bla'
> 7, 17, 'blu'
> 7, 21, 'ble'
> 8, ...
>
> Actually it was enough to get just the numerical column of the function
> result.
>
> I tried
> select object_id, fctX (object_id) from objects;
> Then I get:
> 7, (14, 'bla')
> 7, (17, 'blu')
> 7, (21, 'ble') <--- round brackets
> This looks like an array but how can I split it up to columns or at least
> extract the number-column?
>

this is composite value

you can try

SELECT object_id, (fctX(object_id)).* from objects

Regards

Pavel Stehule


> --
> Sent via pgsql-sql mailing list (pgsql-sql@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-sql
>