From: | "Jaime Casanova" <jcasanov(at)systemguards(dot)com(dot)ec> |
---|---|
To: | "Edwin Quijada" <listas_quijada(at)hotmail(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Retornando un select ...diferencias de Postgres y MSSQL |
Date: | 2008-10-23 17:24:33 |
Message-ID: | 3073cc9b0810231024ofa2c17bx2cd37ddb7abd6f2f@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On 10/23/08, Edwin Quijada <listas_quijada(at)hotmail(dot)com> wrote:
>
> Me ha tocado trabajar en estos dias con MSSQL y he visto algo interesante y es que los Store procedure pueden retornar un set de datos , un select, pero con la desventaja de que este no puede ser usado en un select.
> A raíz de esto me gustaría hacer una pregunta a los que están cerca del código Postgres, Alvaro y Jaime, cual es la razon mas técnica de porque Postgres no puede hacer esto,retornar una selección, sin tener que declarar un tipo.
> Esto me asalta porque me lo han preguntado varias veces y la verdad la respuesta que he dado no se si me convence mucho o estoy equivocado.
>
si puedes...
CREATE FUNCTION fsetdatos() RETURNS SETOF record AS
begin
return query select * from tabla;
return;
end;
LANGUAGE plpgsql;
claro que en el select deberas hacer algo como: "select * from
fsetdatos(campo1 tipo1[, ...])"
o puedes declarar los tipos como parametros OUT
CREATE FUNCTION fsetdatos(out campo1 tipo1[, ...]) RETURNS SETOF record AS
begin
return query select * from tabla;
return;
end;
LANGUAGE plpgsql;
y en el select solo haces: "select * from fsetdatos()"
--
Atentamente,
Jaime Casanova
Soporte y capacitación de PostgreSQL
Asesoría y desarrollo de sistemas
Guayaquil - Ecuador
Cel. +59387171157
From | Date | Subject | |
---|---|---|---|
Next Message | Jaime Casanova | 2008-10-23 17:26:01 | Re: Acerca de la traduccion... |
Previous Message | Edwin Quijada | 2008-10-23 16:56:09 | Retornando un select ...diferencias de Postgres y MSSQL |