SQL - Consulta sql

   
Vista:

Consulta sql

Publicado por Novato (1 intervención) el 05/06/2008 01:38:25
Hola,
Tengo el siguiente problema:

Tengo una tabla que guarda los valores por dia de la venta de varias tiendas, necesito una consulta que me permita traer por tienda la suma de las ventas de un mes determinado y adicionalmante el cumulado anual para ese mismo almacen al mismo mes seleccionado, es decir si se ingresa para la consulta el mes de mayo el resultado seberia ser el siguiente:

Suponiendo que el valor de la venta para todos los meses es de 100

Tienda acumulado_mes acumulado_año
01 100 500

Espero haber sido claro,

La verdad no se si esto se podra hacer con solo select, que es lo que necesito

De atemano gracias por su ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Consulta sql

Publicado por Isaias (5073 intervenciones) el 05/06/2008 18:04:14
En principio, son 2 select

SELECT Tienda, SUM(Ventas) as Acumulado_Mes, x.Acumlado
FROM Ventas t1 join (SELECT Tienda,SUM(Ventas) as Acumulado FROM Ventas WHERE Tienda = 1 GROUP BY Tienda) as X
ON t1.Tienda = X.Tienda
WHERE Tienda = 1
AND Month(FechaVenta) = 1
GROUP BY Tienda, x.Acumulado

Digame si funciona
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta sql

Publicado por pacopaz (143 intervenciones) el 05/06/2008 20:05:21
Si la empresa tiene varios años acumulando las ventas, el query anterior traería información incorrecta.
Al query y subquery debería agergársele Year(FechaVenta), de la siguiente forma:

SELECT t1.Tienda, SUM(t1.Ventas) as Acumulado_Mes, X.Acumlado
FROM Ventas t1 join (SELECT t2.Tienda, Year(t2.FechaVenta) as Anio SUM(t2.Ventas) as Acumulado FROM Ventas t2 WHERE t2.Tienda = 1 GROUP BY t2.Tienda, Year(t2.FechaVenta)) as X
ON t1.Tienda = X.Tienda AND Year(t1.FechaVenta) = X.Anio
WHERE t1.Tienda = [NoTienda]
AND Month(t1.FechaVenta) = [Mes]
AND Year(t1.FechaVenta) = [Año]
GROUP BY t1.Tienda, X.Acumulado

donde
[NoTienda] es el número de tienda que deseas consultar
[Mes] es el número de mes que deseas consultar
[Año] es el número de año que deseas consultar

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta sql

Publicado por Isaias (5073 intervenciones) el 06/06/2008 01:17:23
No lo habia tomado en cuenta, tienes mucha razon, gracias por la observacion.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar