データベースは甘くない

  • 投稿日:
  • by
  • カテゴリ:
  • ハッシュタグ:

見積書の内容を、月ごとに集計して業務負荷を出そうとしたのですが、これが大変。
縦横が1対1で対応している単純な表なら、集計は簡単なんですがね。 

ふだんExcelでやっている集計を、MySQL+PHPでやろうとしたのですが、最初は単純にSELECT文で読んだ値をPHPの配列に入れて、PHPの方で集計しようとしていました。
でも、各工事の工数を日付別に集計しようとするとエライ大変。

こういうのはやっぱりSQLのクエリで、あらかじめ日付別に集計して取り出すべきなんですね。 例えば、カラムMIに日付が入ってて、MH01からMH03までのカラムを集計するとしたら、こんな感じになります。

SELECT MI, SUM(MH01), SUM(MH02), SUM(MH03) FROM <テーブル名> WHERE <抽出条件> GROUP BY MI;

始めて一ヶ月とはいえ、こんなことも知らないで開発しているというお粗末。