Amigos como estan, en otro foro me ayudaron con la respuesta de lo que necesito 
pero solo que esta en sqlserver, ahi veo que hay una funcion pivot que hace lo 
que necesito, la consulta es algo como la siguiente

select bunlarcod,Total = [0]+[1]+[2]+[3]+[4]+[5],dia0 = [0], dia1 = [1], dia2 = 
[2], dia3 = [3], dia4 = [4], dia5 = [5]

from 

(

select bunlarcod, buncod, datediff(dd, bunfec, getdate()) as dias

from bunche 

where bunfec >= dateadd(dd, -5, cast(convert(char(8),getdate(), 112) as 
smalldatetime))

) T 

PIVOT (count(buncod) FOR dias in ([0], [1], [2], [3], [4], [5]))

as P

 

Ahora mi duda Hay alguna funcion parecida a la pivot en postgre???

 

Saludos


 


Date: Fri, 7 May 2010 11:50:13 +0200
From: mlor...@uci.cu
To: fs...@hotmail.com
CC: pgsql-es-ayuda@postgresql.org
Subject: Re: [pgsql-es-ayuda] Ayuda con Select

El 07/05/2010 17:39, Fernando Siguenza escribió: 


Amigos como estan, queria ver si me pueden ayudar a armar un select, tengo la 
siguiente tabla.
 








buncod
bunvarcod
bunlarcod
buntll
bunenvcod
bunfec
bunest

A00065
FRE
10
25
1
2010-05-04



A00066
FRE
20
25
1
2010-05-04



A00067
FRE
20
25
1
2010-05-04



A00068
FRE
20
25
1
2010-05-04



A00069
FRE
20
25
1
2010-05-04



A00070
FRE
20
25
1
2010-05-05


 
Es una tabla donde se almacena la informacion de ramos de flores, cada ramo 
tiene su codigo, indica la variedad a la que pertenece, el largo de las flores, 
el numero de tallos por ramo, el codigo de la envoltura la fecha de corte y el 
estado.
 
Entonces, lo que deseo es obtener cuantos ramos tengo disponible de una 
variedad, de una envoltura especifica, y del numero de tallos por ramo, esto 
agrupado por el largo de cada ramo y cuanto tengo por dia.
 
Algo como esto.
 








largo
dia0
dia1
dia2
dia3
dia4
dia5

10
0
0
0
1
0
0

20
0
0
1
4
0
0
Tomando en cuenta que el dia0 es el dia actual, el dia 1 seria ayer, y asi 
sucesivamente.
 
Dentria ya como parametro el dia maximo del que se desa ver en este caso el dia 
5, el codigo de la variedad, el numero de tallos que desea consultar y la 
envoltura.
 
Entonces queria ver si hay como obtenerlo en un solo select.
 
Espero me puedan ayudar.



Discover the new Windows Vista Learn more!
Me imagino que podría ayudarte algo como esto:

SELECT buntll, count(buncod) as cantidad,  FROM tabla_ramos_flores e 
    WHERE e.bunvarcod = 'FREE' 
     AND e.bunenvcod = 'ENVOLTURA ESPECÍFICA'
     GROUP BY buntll

Saludos

                                          
_________________________________________________________________
Connect to the next generation of MSN Messenger 
http://imagine-msn.com/messenger/launch80/default.aspx?locale=en-us&source=wlmailtagline

Responder a