Ver Mensaje Individual
  #8 (permalink)  
Antiguo 03/05/2012, 12:41
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Queries con fechas

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.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)