• ベストアンサー

MYSQLで月ごとの集計をおこないたい

こんばんは。MYSQLのTABLE_Aに下記の3つのフィールドがあります。 日時(DATE),商品名(VARCHAR),売上(INT) 2010/01/01,商品A,100 2010/01/30,商品B,200 2010/03/10,商品C,300 2010/03/20,商品D,400 最終的に欲しいのは、1月は1月の集計(300)、3月は3月の集計(700)など、月でまとめたいと思っています。 groupでまとめるにも日付まではいっているので、月でまとめるにはどうしたらいいのか悩んでいます。よろしくお願いします。利用MYSQLは5.5です。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

SELECT 日時, 商品名, SUM(売上) FROM TABLE_A GROUP BY DATE_FORMAT(日時, '%Y%m')

mellow91
質問者

お礼

ご回答ありがとうございます!感謝っす!

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

遅くても良ければ SELECT MONTH(日時) AS 月,SUM(売上) AS 売上 FROM TABLE_A GROUP BY 月 とすれば月で集計されるでしょう もちろん月で集計するのが目的のテーブルであれば、最初から テーブルに集計単位になる月(正確には年月?)を個別フィールドとして 埋め込んでおき、月と売上を組みにしたインデックスを貼っておくことです

mellow91
質問者

お礼

ご回答ありがとうございます!勉強になります!感謝です!

関連するQ&A