Ver Mensaje Individual
  #9 (permalink)  
Antiguo 03/05/2012, 14:57
dragonfire256
 
Fecha de Ingreso: septiembre-2011
Ubicación: Caracas
Mensajes: 240
Antigüedad: 13 años, 1 mes
Puntos: 9
Respuesta: Queries con fechas

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Ese tipo de resultados se obtiene con el agrupamiento.
Supongamos que necesitas las ventas realizadas en cada día por un vendedor, para un mes determinado, con subtotales por vendedor.
Eso sería:
Código MySQL:
Ver original
  1. SELECT vendedor_id, fecha, SUM(importe) totalVenta
  2. FROM ventas
  3. GROUP BY vendedor_id, fecha WITH ROLLUP;
Esa última cláusula agrega un registro adicional al final de cada lista de días del mismo vendedor, con NULL en los dos campos y el subtotal. Al final de toda la tabla inserta además el total final.
Tiene el único inconveniente que no se la puede ordenar de esa forma, porque alteraría todo el resultado. Para hacer una lista ordenada con subtotales, hay que ordenar previamente la tabla origen:
Código MySQL:
Ver original
  1. SELECT vendedor_id, fecha, SUM(importe) totalVenta
  2. FROM (SELECT * FROM ventas ORDER BY vendedor_id, fecha) ventas
  3. GROUP BY vendedor_id, fecha WITH ROLLUP;
Mas o menos así es la idea.
Dejame decirte que tu idea funciono... Muchas gracias hermano... Aqui dejo la sentencia sql por si alguien mas necesita algo parecido

Código SQL:
Ver original
  1. SELECT fecha,SUM(horas) FROM (SELECT * FROM reporte_horas ORDER BY DAY(fecha)) reporte_horas WHERE MONTH(fecha)=MONTH(curdate()) AND YEAR(fecha)=YEAR(CURDATE())GROUP BY fecha

Por cierto, para que sirve el ROLLUP?

Muchas gracias