Hola jandrogdz:
Lo único que tienes que hacer es agregar el modificador WIHT ROLLUP a la cláusula GROUP BY:
http://dev.mysql.com/doc/refman/5.0/...modifiers.html
Checa este ejemplo:
Código MySQL:
Ver original+-----------+------------+-------+
| cliente | fecha | total |
+-----------+------------+-------+
| cliente 1 | 2013-02-01 | 10 |
| cliente 2 | 2013-01-02 | 18 |
| cliente 1 | 2013-02-03 | 21 |
| cliente 1 | 2013-02-04 | 32 |
| cliente 2 | 2013-01-05 | 11 |
| cliente 1 | 2013-01-06 | 50 |
| cliente 2 | 2013-02-07 | 62 |
| cliente 2 | 2013-02-08 | 10 |
| cliente 2 | 2013-01-09 | 12 |
| cliente 1 | 2013-01-10 | 22 |
| cliente 1 | 2013-01-11 | 13 |
+-----------+------------+-------+
11 rows
in set (0.00 sec
)
-> SUM( total
) AS totalgral
+-----------+------+-------+---------+-------+-----------+
| cliente | Anio | Enero | Febrero | Marzo | totalgral |
+-----------+------+-------+---------+-------+-----------+
| cliente 1 | 2013 | 85 | 63 | 0 | 148 |
| cliente 2 | 2013 | 41 | 72 | 0 | 113 |
| NULL | 2013 | 126 | 135 | 0 | 261 | +-----------+------+-------+---------+-------+-----------+
En cuanto al comentario de dark_17
Cita: Esa consulta que estas haciendo te va traer problemas men, es muy pesada, con datos grandes va volar estas usando 12 clausulas SUM
No estoy de acuerdo, Siempre será preferible hacer las consultas del lado del servidor de BD y no utilizando algún lenguaje de programación, pues a final de cuentas el bucle tendría que recorrer el total de registros de la tabla, mientras que el motor de BD tiene procesos optimizados para hacer las consultas más eficientes. Si tienes un buen manejo de índices, podría apostar mi desayuno del día de hoy a que sería más rápido la consulta que lo que propone dark_17.
Sería interesante que hicieras la prueba y nos dijeras los resultados... pero mucho ojo, temas de programación no se deben tratar en este foro... políticas de uso.
Saludos
Leo.