Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

consulta de saldos de productos

Estas en el tema de consulta de saldos de productos en el foro de Bases de Datos General en Foros del Web. Como se puede hacer la siguiente consulta: como puedo hacer para juntar todos los registros por producto y que almacene el primer saldo inicial y ...
  #1 (permalink)  
Antiguo 05/10/2011, 10:23
 
Fecha de Ingreso: marzo-2009
Mensajes: 356
Antigüedad: 15 años, 9 meses
Puntos: 7
consulta de saldos de productos

Como se puede hacer la siguiente consulta:

como puedo hacer para juntar todos los registros por producto y que almacene el primer saldo inicial y el ultimo saldo final y que sume los ingresos y salidas

por ejemplo del producto = 4 saldria asi:

4 0 1240 70 1170 3
ya que 0 fue el primer saldo inicial, 1240 + 0 = 1240; 0+70 = 70 y 1170 fue el ultimo saldo final; y 3 queda igual

nombre de cada columna:
CODIGO-PRODUCTO | SALDO-INICIAL |INGRESO | SALIDA| SALDO-FINAL|ALMACEN
3 0 8 0 8 3
4 0 1240 0 1240 3
4 1240 0 70 1170 3
6 0 39 0 39 3
6 31 0 5 26 3
6 38 0 2 36 3
6 26 0 1 25 3
6 21 0 1 20 3
6 20 0 13 7 3
6 36 0 3 33 3
6 33 0 7 26 3
6 25 0 4 21 3

alguien que me ayude

gracias
  #2 (permalink)  
Antiguo 05/10/2011, 11:20
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 4 meses
Puntos: 774
Respuesta: consulta de saldos de productos

como que te falta un campo fecha para poder saber cual es el inicial y cual es el final no??
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 05/10/2011, 15:16
 
Fecha de Ingreso: marzo-2009
Mensajes: 356
Antigüedad: 15 años, 9 meses
Puntos: 7
Respuesta: consulta de saldos de productos

Ya y si tubiera, = como se podria hacer ? xq la fecha esta en la cabecera, este es el detalle.
  #4 (permalink)  
Antiguo 05/10/2011, 16:05
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 4 meses
Puntos: 774
Respuesta: consulta de saldos de productos

si tuvieras una fecha seria algo asi



Código SQL:
Ver original
  1. CREATE TABLE #temp(
  2. id INT,
  3. saldo_ini INT,
  4. ingreso INT,
  5. salida INT,
  6. saldo_fin INT,
  7. fecha datetime
  8. )
  9.  
  10. INSERT INTO #temp VALUES (4,0,1240,0,1240,getdate()+1)
  11. INSERT INTO #temp VALUES (4,1240,0,70,1170,getdate()+2)
  12. INSERT INTO #temp VALUES (6,0,39,0,39,getdate()+3)
  13. INSERT INTO #temp VALUES (6,31,0,5,26,getdate()+4)
  14. INSERT INTO #temp VALUES (6,38,0,2,36,getdate()+5)
  15. INSERT INTO #temp VALUES (6,26,0,1,25,getdate()+6)
  16. INSERT INTO #temp VALUES (6,21,0,1,20,getdate()+7)
  17. INSERT INTO #temp VALUES (6,20,0,13,7,getdate()+8)
  18. INSERT INTO #temp VALUES (6,36,0,3,33,getdate()+9)
  19. INSERT INTO #temp VALUES (6,33,0,7,26,getdate()+10)
  20. INSERT INTO #temp VALUES (6,25,0,4,21,getdate()+11)
  21.  
  22.  
  23.  
  24. SELECT t4.id,t4.inicial,t5.ingreso,t5.salida,t4.final,t5.ingreso-t5.salida final_real FROM(
  25. SELECT t3.id,SUM(inicial) inicial , SUM(final) final
  26. FROM(
  27. SELECT
  28. t1.id,
  29. CASE
  30. WHEN fecha=minimo THEN saldo_ini END AS inicial,
  31. CASE
  32. WHEN fecha=maximo THEN saldo_fin END AS final
  33. FROM #temp AS t1
  34. LEFT JOIN (SELECT id, MIN(fecha) AS minimo , MAX(fecha) AS maximo FROM #temp GROUP BY id) AS t2 ON (t1.id=t2.id)
  35. --group by t1.id
  36. ) t3 GROUP BY t3.id) t4
  37. LEFT JOIN (SELECT t1.id,SUM(ingreso) ingreso , SUM(salida) salida FROM #temp AS t1 GROUP BY t1.id) t5 ON (t4.id=t5.id)

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 05/10/2011, 16:28
 
Fecha de Ingreso: marzo-2009
Mensajes: 356
Antigüedad: 15 años, 9 meses
Puntos: 7
Respuesta: consulta de saldos de productos

Muy buena logica, pero no la entiendo muy bien tu consulta, pero estoy indagando sobre tus sentencias.
  #6 (permalink)  
Antiguo 06/10/2011, 08:03
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 4 meses
Puntos: 774
Respuesta: consulta de saldos de productos

Probaste la sentencia que te mande???
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #7 (permalink)  
Antiguo 06/10/2011, 08:38
 
Fecha de Ingreso: marzo-2009
Mensajes: 356
Antigüedad: 15 años, 9 meses
Puntos: 7
Respuesta: consulta de saldos de productos

Si pero no me funciona .S
  #8 (permalink)  
Antiguo 06/10/2011, 08:51
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 4 meses
Puntos: 774
Respuesta: consulta de saldos de productos

lo corriste tal cual te lo pase o lo quisiste implementar en tu consulta??
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: productos, saldos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:01.