sql >> Databasteknik >  >> RDS >> Mysql

gruppera efter månadsnamn i sql

Jag tror att det bästa alternativet är att ha en månadstabell som ser ut som följer

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

namnge denna tabell som månader

och du kan använda frågan enligt nedan

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

Det här borde fungera bra!

Här är SQL-fiolen det skulle hjälpa dig




  1. Anslutningen kan inte återassocieras eftersom underordnade objekt fortfarande är öppna

  2. Bash Script Loop Through MySQL

  3. PG::ConnectionBad (FATAL:pg_hba.conf avvisar anslutning för värd 172.17.0.1, användare XXX, databas XXX, SSL av):

  4. c# mysql summafråga att etikettera