Re: problem with selecting from a function

From: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
To: Andreas <maps(dot)on(at)gmx(dot)net>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: problem with selecting from a function
Date: 2011-06-21 03:56:26
Message-ID: BANLkTimdeiytdEd862dEqQM4VGzTv4qDmA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

2011/6/21 Andreas <maps(dot)on(at)gmx(dot)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(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-sql
>

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Eyal Wilde 2011-06-21 10:37:38 a strange order by behavior
Previous Message Andreas 2011-06-21 01:55:50 problem with selecting from a function