Re: Consultas varias

From: Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl>
To: Esteban Osorio <eosorio(at)economia(dot)cl>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Consultas varias
Date: 2004-12-16 15:46:13
Message-ID: 20041216154612.GB25834@dcc.uchile.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On Thu, Dec 16, 2004 at 12:43:48PM -0400, Esteban Osorio wrote:

Hola,

> En la instrucción de invocación a la función, ¿que significa la
> parte "as foo (a int, b text)"?

Es un alias que define el tipo de retorno de la funcion. Puedes cambiar
foo, a y b por nombres cualquiera, pero tienes que indicarle los tipos
de datos correctos. (De lo contrario lanzara un error al momento de
ejecutar la funcion).

Una alternativa es definir un tipo de dato especial y declarar la
funcion como retornando SETOF ese tipo en lugar de SETOF RECORD. Asi
puedes omitir el alias.

CREATE TYPE foo AS (a int, b text);
CREATE FUNCTION foo() RETURNS SETOF foo ...;
SELECT * FROM foo();

--
Alvaro Herrera (<alvherre[(at)]dcc(dot)uchile(dot)cl>)
Este mail se entrega garantizadamente 100% libre de sarcasmo.

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Esteban Osorio 2004-12-16 16:03:30 RE: Consultas varias
Previous Message Alvaro Herrera 2004-12-16 15:28:49 Re: Procedimiento Almacenado