Re: PROBLEM WITH FUNCTIONS

From: Randall Lucas <rlucas(at)tercent(dot)net>
To: "Mario Alberto Soto Cordones" <mario_soto(at)compuall(dot)cl>
Cc: <pgsql-sql(at)postgresql(dot)org>
Subject: Re: PROBLEM WITH FUNCTIONS
Date: 2003-04-21 21:46:36
Message-ID: B9FA6AB3-7442-11D7-9BCD-000A957653D6@tercent.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Mario,

If your function returns a record, you have to treat it like it's a
relation (table). So you don't select it, you select from it.

Try:

select * from get_unidades(10, 1, 15, 17);

Also you may have to give it an explicit variable list such as:

select * from get_unidades(10,1,15,17) as (codigo numeric(3,0),
descripcion text);

Best,

Randall

On Monday, April 21, 2003, at 05:38 PM, Mario Alberto Soto Cordones
wrote:

> Hi.
>
> i have a problem with a function.
>
> i create a type unidades
> CREATE TYPE unidades AS (codigo numeric(3,0),
> descripcion text);
>
> and i create a function get_unidades
> CREATE FUNCTION get_unidades(int4, int4, int4, int4) RETURNS
> typeof
> unidades AS '
> SELECT cucoduni, cudesuni
> FROM cumauni
> WHERE cuempuni = $1 and
> cuseduni = $2 and
> cucaruni = $3 and
> cuasiuni= $4
> ; ' LANGUAGE 'sql';
>
> and at this moment´s it´s all ok BUT when execute this function
> select get_unidades(10,1,15,17)
>
> say
> "cannot display a value of type RECORD"
>
> any idea, PLEASE HELP MY
>
> saludos
>
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
>

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Aditya 2003-04-21 21:50:20 converting from bigint to bit to use bitwise operators
Previous Message Mario Alberto Soto Cordones 2003-04-21 21:38:05 PROBLEM WITH FUNCTIONS