From: | "Linder Poclaba" <linder(dot)poclaba(at)gmail(dot)com> |
---|---|
To: | Cuenca <ycuenca(at)facinf(dot)uho(dot)edu(dot)cu>, "Jaime Casanova" <systemguards(at)gmail(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Funcion con numero indefinido de devoluciones |
Date: | 2006-06-13 01:42:21 |
Message-ID: | 5aa69e1b0606121842k914ac11r3683973d1a8f2f9c@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola también queria e hice algo parecido y tambien pregunte como hacerlo y
bueno en mi caso tenia que formar algo asi:
cliente enero febrero marzo ... diciembre
Luis 15.5 25.5 26.3 17.5
Juan 28.5 45.5 56.3 59.5
y lo solucione algo asi, como tenia que sacar en mi consulta 13 columnas
creo el tipo de dato:
CREATE TYPE meses AS (
cliente text,
enero float,
febrero float,
marzo float,
.
.
.
Diciembre float
);
luego la funcion
CREATE OR REPLACE FUNCTION crosstab_reporte(text) RETURNS SETOF meses AS
'$libdir/tablefunc', 'crosstab' LANGUAGE 'c' STABLE STRICT;
luego hacia la consulta select * from crosstab_reporte('consulta')
ahora la pregunta esta bien lo que hice? algo así hiciste cuenca?, porque
supongo que en tus asignaturas no solo tienes PostgreSQL,MySQL y Oracle
puedes tener muchas más, ¿hay que definir en el tipo de dato la columna que
quieres sacar?, o es que no estoy entendiendo bien lo que hace crosstab :(
espero que me haya explicado bien.
On 6/11/06, Alvaro Herrera <alvherre(at)commandprompt(dot)com> wrote:
>
> Cuenca escribió:
>
> > tambien he probado crear mi propia funcion, con un tipo de dato
> definido,
> > para tener nombres que pueda reconocer mejor
>
> Hmm, estoy casi seguro que le puedes dar los nombres de columnas de
> alguna manera.
>
> > mil gracias Alvaro, Jaime y sobre todo a Michael Stonebraker por tan
> > genial sistema...
>
> :-) Buena la de Stonebraker ... probablemente en este caso particular
> debes agradecer a Tom Lane y Joe Conway por la implementacion de
> set-returning functions y el modulo tablefunc.
>
> ---------------------------(fin del mensaje)---------------------------
> TIP 1: para suscribirte y desuscribirte, visita
> http://archives.postgresql.org/pgsql-es-ayuda
>
From | Date | Subject | |
---|---|---|---|
Next Message | Jaime Casanova | 2006-06-13 01:47:38 | Re: Problema con creación de tabla |
Previous Message | Jaime Casanova | 2006-06-13 00:54:37 | Re: Error al insertar |