Agrupar por meses y años
Publicado por Jesus (12 intervenciones) el 19/03/2018 19:40:13
Hola a todos, de antemano vaya por delante mi agradecimiento por estar ahí. Recurro a vosotros para construir una SQL con la que no consigo el resultado esperado. De una tabla de facturas de ventas (facturasventas) pretendo obtener los resultados de las ventas agrupadas por meses y años. Hice lo siguiente:
Con esta SQL obtengo el siguiente resultado:
como se puede observar no sale Agosto porque no hay ventas (vacaciones) pero me gustaria que saliera el mes aun estando con 0. y si es posible el nombre del mes con letra, es decir, el resultado que necesito sería:
Saludos y gracias por compartir vuestros conocimientos.
1
2
3
4
5
6
7
8
SELECT Mes,A_2015,A_2016, A_2017, A_2015+A_2016+A_2017 AS Total
FROM (SELECT MONTH(Fecha) AS Mes
, SUM(IF(YEAR(Fecha)=2015,Total,0)) As 'A_2015'
, SUM(IF(YEAR(Fecha)=2016,Total,0)) As 'A_2016'
, SUM(IF(YEAR(Fecha)=2017,Total,0)) As 'A_2017'
FROM facturasventas fv INNER JOIN clientes c ON fv.idCliente=c.id
WHERE YEAR(Fecha) between 2015 and 2017
GROUP BY Mes) AS suma
Con esta SQL obtengo el siguiente resultado:
como se puede observar no sale Agosto porque no hay ventas (vacaciones) pero me gustaria que saliera el mes aun estando con 0. y si es posible el nombre del mes con letra, es decir, el resultado que necesito sería:
Saludos y gracias por compartir vuestros conocimientos.
Valora esta pregunta
0