sql >> Base de Datos >  >> RDS >> Mysql

agrupar por nombre de mes en sql

Creo que la mejor opción es tener una tabla mensual que tenga el siguiente aspecto

id | Month
---------------------
 1 | January
 2 | February
 3 | March
 4 | April
 5 | May
 6 | June
 7 | July
 8 | August
 9 | September
10 | October
11 | November
12 | December

nombra esta tabla como meses

y puede usar la consulta como se muestra a continuación

SELECT
    months.`month`,
    Sum(sales.quantity)
FROM
    sales
RIGHT OUTER JOIN months ON months.`month` = monthname(sales.created)
GROUP BY
    months.`month`
ORDER BY
    months.id

¡Esto debería funcionar bien!

Aquí está el SQL Fiddle eso te ayudaria