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

Filtro de Fechas...ideas porfa

Estas en el tema de Filtro de Fechas...ideas porfa en el foro de Mysql en Foros del Web. Gracias a las sugerencias de Geoavila, paso mi pregunta a este lado del foro. Necesito generar un query, que me traiga las ventas de un ...
  #1 (permalink)  
Antiguo 04/10/2005, 09:22
Avatar de rouuss  
Fecha de Ingreso: abril-2005
Ubicación: Mexico DF
Mensajes: 55
Antigüedad: 19 años
Puntos: 0
Filtro de Fechas...ideas porfa

Gracias a las sugerencias de Geoavila, paso mi pregunta a este lado del foro.
Necesito generar un query, que me traiga las ventas de un mes, pero necesito que agupe por semanas del mes, mostrando subtotales por semana y un subtotal por el mes.

Lo que quiero es que me agupe por semana..por ejemplo

Fecha1 = FechaIni1 and FechaFin1 ; Sum( Subtotalsemana1)
Fecha2 = FechaIni2 and FechaFin2 ; Sum( Subtotalsemana2)
Fecha3 = FechaIni3 and FechaFin3 ; Sum ( Subtotalsemana3)
Fecha4 = FechaIni4 and FechaFin4 ; Sum( Subtotalsemana4)
Fecha5 = FechaIni5 and FechaFin5 ; Sum( Subtotalsemana5)

Mes = Sum (subtotalSemana1+...+ Subtotalsemana5).

Pero que me despliegue los datos que pongo en mi SQL, es decir; el producto, la cantidad, SubtotalSemana1,..., SubtotalSemana5, SubtotalMes.

Pero no se como hacer el sQL, para que me los agupe por semana y despliegue el subtotalSemanal.
Mi query esta asi:

SQL = "SELECT DetalleDeRemiFact.Producto, DetalleDeRemiFact.Unidad, DetalleDeRemiFact.Precio, Sum(DetalleDeRemiFact.Cantidad) AS SumaDeCantidad, Sum(DetalleDeRemiFact.Subtotal) AS SumaDeSubtotal "
SQL = SQL + "FROM RemiFact INNER JOIN (DetalleDeRemiFact INNER JOIN Productos ON DetalleDeRemiFact.IdProducto = Productos.IdProducto) ON RemiFact.NumRemFact = DetalleDeRemiFact.NumRemFact "
SQL = SQL + "WHERE RemiFact.FechaRemFac BETWEEN #" & Format(FechaIni1, "m/d/yyyy") & "# And #" & Format(FechaFin1, "m/d/yyyy") & "# "
SQL = SQL + "AND RemiFact.FechaRemFac BETWEEN #" & Format(FechaIni2, "m/d/yyyy") & "# And #" & Format(FechaFin2, "m/d/yyyy") & "# "
SQL = SQL + "AND RemiFact.FechaRemFac BETWEEN #" & Format(FechaIni3, "m/d/yyyy") & "# And #" & Format(FechaFin3, "m/d/yyyy") & "# "
SQL = SQL + "AND RemiFact.FechaRemFac BETWEEN #" & Format(FechaIni4, "m/d/yyyy") & "# And #" & Format(FechaFin4, "m/d/yyyy") & "# "
SQL = SQL + "AND RemiFact.FechaRemFac BETWEEN #" & Format(FechaIni5, "m/d/yyyy") & "# And #" & Format(FechaFin5, "m/d/yyyy") & "# "
SQL = SQL + "AND RemiFact.Estatus <> 'C' AND RemiFact.Tipo = '" & Mid(TipoProceso, 1, 1) & "' And DetalleDeRemiFact.Tipo = '" & Mid(TipoProceso, 1, 1) & "' " + vCategoria + vCalidad
SQL = SQL + "GROUP BY DetalleDeRemiFact.Producto, DetalleDeRemiFact.Unidad "
SQL = SQL + "ORDER BY DetalleDeRemiFact.Producto;"

Ojala me puedan dar una ayudadita..
Gracias!!
  #2 (permalink)  
Antiguo 04/10/2005, 10:10
Avatar de Jose_minglein2  
Fecha de Ingreso: noviembre-2004
Mensajes: 2.344
Antigüedad: 19 años, 5 meses
Puntos: 8
En mysql (por la sintaxis si no lo usas a lo mejor has de cambiar algo)yo lo haría asi (evito poner todos los campos):

Código:
Select IdProducto, producto, ..., 
(select Sum(DetalleDeRemiFact.Cantidad) from DetalleDeRemiFact where
 DetalleDeRemiFact.IdProducto=Producto.IdProduco and FechaRemFac>" & FechaIni1 &" and FechaRemFac<=" & FechaFin1 &") AS Sub1, 
(select Sum(DetalleDeRemiFact.Cantidad) from DetalleDeRemiFact where
 DetalleDeRemiFact.IdProducto=Producto.IdProduco and FechaRemFac>" & FechaIni2 &" and FechaRemFac<=" & FechaFin2 &") AS Sub2, ...
, (Sub1 + Sub2 + Sub3 + Sub4) as Total 
From Productos
Espero que te sirva de ayuda

Un saludo
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 22:28.