[Pgsql-ayuda] Llamar una funcion

Sergio Valdes voig_pgsql@entelchile.net
Fri, 01 Aug 2003 16:15:04 -0400


Gracias Alvaro por tu ayuda. Lo del Select ya lo habia enontrado mirando
ejemplos de pl/pgSQL (que distraido soy, siempre estuvieron ahi) pero no me
salia nada pues me faltaba la parte final :
.. as foot (a date).

Además como tu bien decias sólo me devolvia una fila pero cuando agregue
"setof" ya me salieron todas

Nuevamente gracias, y ahora solo una ultima duda, por que en la clausula
LANGUAGE no puedo poner "plpqsql" , pues me da un error diciendo: language
"plpgsql" does not exist.


Sergio Valdés H.
[Pgsql-ayuda]
----- Original Message ----- 
From: "Alvaro Herrera" <alvherre@dcc.uchile.cl>
To: "Sergio Valdes" <voig_pgsql@entelchile.net>
Cc: <pgsql-ayuda@tlali.iztacala.unam.mx>
Sent: Thursday, July 31, 2003 11:15 PM
Subject: Re: [Pgsql-ayuda] Llamar una funcion


> On Thu, Jul 31, 2003 at 01:30:07PM -0400, Sergio Valdes wrote:
>
> Sergio,
>
>  CREATE FUNCTION "func01" (date)
>          RETURNS setof record AS
>         'select * from ventas where fecha_venta >= $1'
>   LANGUAGE "sql";
>
> > Mis dudas son las siguientes:
> > Esta bien que el tipo de datos del RETURNS sea record?
>
> No, probablemente debe ser SETOF RECORD.  Lo otro también funciona pero
> retorna una cosa distinta (sólo una tupla, y probablemente quieres
> varias).
>
> > Como puedo llamar esta función desde Php 4.3.2?
>
> Como desde cualquier otro sitio:
>
> select * from func01('2003-02-01') as foo(a date);
>
> donde la parte (a date) debe coincidir con la definición de la tabla
> ventas.  En mi caso,
>
> alvh=> \d ventas
>      Table "public.ventas"
>    Column    | Type | Modifiers
>  ------------+------+-----------
>  fecha_venta | date |
>
> -- 
> Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
> "Escucha y olvidarás; ve y recordarás; haz y entenderás" (Confucio)
> _______________________________________________
> Pgsql-ayuda mailing list
> Pgsql-ayuda@tlali.iztacala.unam.mx
> http://tlali.iztacala.unam.mx/mailman/listinfo/pgsql-ayuda