buenas noches ya tengo algo de tiempo con este problema pero no se como hacerlo e llegado hasta con el crosstab pero no se como hacer para que sean mas columnas de las 3 que solo muestra o no se como usarlo porfavor pido su ayuda.
esta es la esctructura dela tabla que quiero :
existencias
(
id_exist integer NOT NULL,
clave character varying(50),
existencia numeric(18,2),
exismax numeric(18,2),
exismin numeric(18,2),
idsucursal integer,
status_existencia character varying(1),
)
llevo esto:
SELECT projreport.row_name[1] As clave, projreport.row_name[2] As descrip ,exist1 , exist2 ,
exist3 ,exist4
FROM crosstab('SELECT ARRAY[i.clave::text, i.descrip::text] As row_name,
if.existencia::text As bucket,
if.existencia::text As bucketvalue
FROM producto i LEFT JOIN existencias As if
ON (i.clave = if.clave)
GROUP BY idsucursal,i.clave,descrip, if.existencia
ORDER BY i.clave,idsucursal, if.existencia'
)
As projreport(row_name text[], exist1 text, exist2 text,
exist3 text,exist4 text )
el cual a si me funciona y tira esto:
| clave | descrip | exist1 | exist2 | exist3 | exist4 |
bueno lo que quiero es por ejemplo el status_existencia me lanse esto y a si con maxima existencia y con cada uno de los campos
| clave | descrip | exist1 | exist2 | exist3 | exist4 | status_existencia1 | status_existencia2 | status_existencia3 | status_existencia4
espero puedan ayudarme. Gracias ante mando.