Re: PROBLEM WITH FUNCTIONS - Mailing list pgsql-sql

From Randall Lucas
Subject Re: PROBLEM WITH FUNCTIONS
Date
Msg-id B9FA6AB3-7442-11D7-9BCD-000A957653D6@tercent.net
Whole thread Raw
In response to PROBLEM WITH FUNCTIONS  ("Mario Alberto Soto Cordones" <mario_soto@compuall.cl>)
Responses Re: PROBLEM WITH FUNCTIONS  ("Mario Alberto Soto Cordones" <mario_soto@compuall.cl>)
List 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
>



pgsql-sql by date:

Previous
From: "Mario Alberto Soto Cordones"
Date:
Subject: PROBLEM WITH FUNCTIONS
Next
From: Aditya
Date:
Subject: converting from bigint to bit to use bitwise operators