From: | Jairo Martín Miguel <jairo010(at)hotmail(dot)com> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: ejecutar una consulta creada |
Date: | 2005-05-25 20:29:49 |
Message-ID: | BAY104-F80F59735211624D7E3C26810E0@phx.gbl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
>No es EXEC sino EXECUTE; y no puedes simplemente asignar el resultado y
>retornar eso, sino que necesitas un FOR EXECUTE <string>; LOOP RETURN
>NEXT <foo>; END LOOP; (o algo semejante). Pero de todas maneras yo
>haria lo siguiente:
>
> > > declare
> > >
> > > seccion alias for $1; -- Parámetro que indica la sección por la que se
> > > filtrará.
> > > resultado text; -- String donde se construye la solución.
> > >
> > > begin
> > >
> > > resultado := 'SELECT OK_PERSONAS.nombre, DW_EDT.programa,
>DW_HORAS.horas
> > > FROM OK_PERSONAS INNER JOIN (DW_HORAS INNER JOIN DW_EDT ON
> > > DW_HORAS.programa=DW_EDT.programa) ON
>OK_PERSONAS.persona=DW_HORAS.persona
> > > WHERE (OK_PERSONAS.seccion=''' || seccion || ''');';
> >>
> > >return resultado;
> > >end;
>
>create function foo(text) returns setof <tipo> language sql as '
>select ... WHERE ok_personas.seccion = $1';
>
>Mucho mas sencillo y te evitas invocar plpgsql donde realmente es
>innecesario.
me podrías aclarar cual es el tipo que tengo que devolver como resultado
(donde pones <tipo>) no puedo devolver un subconjunto de las tuplas de una
de mis tablas, ya que el resultado tiene campos de las tres tablas que
incluyo en el FROM. Los tipos de los campos devueltos son:
El campo "nombre" de tipo text se recoge de la tabla "OK_PERSONAS"
El campo "programa" de tipo text se recoge de la tabla "DW_EDT"
El campo "horas" de tipo float8 se recoge de la tabla "DW_HORAS"
Gracias
_________________________________________________________________
Descubre la descarga digital con MSN Music. Más de medio millón de
canciones. http://music.msn.es/
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2005-05-25 20:58:49 | Re: tipos de datos |
Previous Message | Mario Soto Cordones - Venezuela | 2005-05-25 20:24:28 | Re: tipos de datos |