Ver Mensaje Individual
  #7 (permalink)  
Antiguo 13/11/2013, 17:19
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Como realizar esta consulta de agrupacion

quizas esto te sirva:

Código SQL:
Ver original
  1. CREATE TABLE #productos
  2. (
  3. id INT,
  4. num_par VARCHAR(20),
  5. catego VARCHAR(20),
  6. precio_das INT,
  7. cantidad INT,
  8. fecha datetime,
  9. tipo VARCHAR(MAX)
  10.  
  11. )
  12.  
  13. INSERT INTO #productos VALUES (38,  'AR-310NT', 'Consumibles',  1089,   1,  '07/11/2013',   'Entrada')
  14. INSERT INTO #productos VALUES (39,  'AR-310NT', 'Consumibles',  1089,   2,  '08/11/2013',   'Entrada')
  15. INSERT INTO #productos VALUES (40,  'AR-310NT', 'Consumibles',  1089,   2,  '08/11/2013',   'Salida')
  16. INSERT INTO #productos VALUES (41,  'AR-310NT', 'Consumibles',  1089,   2,  '08/11/2013',   'Salida')
  17. INSERT INTO #productos VALUES (41,  'AR-310NT', 'Consumibles',  1089,   4,  '08/11/2013',   'Entrada')
  18. INSERT INTO #productos VALUES (41,  'AR-310NT', 'Consumibles',  1089,   2,  '08/11/2013',   'Salida')
  19.  
  20.  
  21. SELECT t2.num_par,t2.total,t3.fecha,t3.catego FROM(
  22. SELECT num_par,SUM(entrada) AS total FROM (
  23. SELECT
  24. CASE WHEN tipo='Entrada' THEN SUM(cantidad) ELSE SUM(-cantidad)END AS entrada,num_par
  25. FROM #productos
  26. GROUP BY tipo,num_par) AS t1
  27. GROUP BY num_par) t2 LEFT JOIN
  28. (SELECT num_par,MAX(fecha) AS fecha,catego FROM #productos GROUP BY num_par,catego) AS t3 ON (t2.num_par=t3.num_par)

son datos parecidos a los tuyos, solo acomodalo a tus necesidades :)
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me