Ver Mensaje Individual
  #2  
Antiguo 13-01-2009
brandolin brandolin is offline
Miembro
 
Registrado: jul 2003
Ubicación: Mendoza
Posts: 324
Reputación: 21
brandolin Va por buen camino
La verdad que mucho no se entiende de donde sacas la informacion, pero aparentemente lo que necesitas es hacer un pasaje de filas a columnas ¿¿??

Yo hice algo similar con la siguiente consulta, espero te sirva
Código SQL [-]
select 
   a1.cod_clasificacion, 
   c1.nombre_clasif,
   SUM(CASE cc.tipo_comp WHEN 1 THEN cd.costo_total ELSE 0 END) AS compras, 
   SUM(CASE cc.tipo_comp WHEN 2 THEN cd.costo_total ELSE 0 END) AS ventas, 
   SUM(CASE cc.tipo_comp WHEN 3 THEN cd.costo_total ELSE 0 END) AS transferencias, 
   SUM(CASE cc.tipo_comp WHEN 5 THEN cd.costo_total ELSE 0 END) AS devoluciones, 
   SUM(CASE cc.tipo_comp WHEN 6 THEN cd.costo_total ELSE 0 END) AS destruccion
   from comp_mov_deposito_cab cc 
   inner join comp_mov_deposito_det cd on   cc.num_comp_armado = cd.num_comp_armado 
  inner join articulos a1 on cd.cod_articulo=a1.cod_articulo
  inner join clasificaciones c1 on a1.cod_clasificacion = c1.cod_clasificacion
  group by a1.cod_clasificacion, c1.nombre_clasif;

Si no se entiende la idea puedo simplificarla un poco, pero el secreto esta en el uso del CASE segun el tipo de Comprobante (en mi caso) de movimiento en el tuyo.

Suerte.
Responder Con Cita