Skip site navigation (1) Skip section navigation (2)

Re: Retornando un select ...diferencias de Postgres y MSSQL

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 (view raw or flat)
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

In response to

Responses

pgsql-es-ayuda by date

Next:From: Jaime CasanovaDate: 2008-10-23 17:26:01
Subject: Re: Acerca de la traduccion...
Previous:From: Edwin QuijadaDate: 2008-10-23 16:56:09
Subject: Retornando un select ...diferencias de Postgres y MSSQL

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group