MySQL で月を跨ぐ月毎集計

例えば締め日などが毎月5日の会社で月ごとの売り上げを出したい時など、
毎月1日からその月の最終日までの集計ではなく、
毎月6日から次の月の5日までの集計がほしいときに使えます。

MySQL日毎、周毎、月毎集計 を参考に

SELECT DATE(`date` + INTERVAL 5 - DAYOFMONTH(`date`) DAY) AS month , 
	SUM(`num`) AS total
FROM `hoge`
GROUP BY month

とやっても、 month の値が毎月5日に代わるだけで集計期間は変わらなかった。

よく考えてみると month の中でやっているのは、
元の日付に + 5 して、そこから元の日付をマイナスする
ということなので、日付を5日に強制しているだけでした。

今回必要なのは、
日付が5日までなら前月分集計、6日以降なら今月分集計
といった振り分けなので、

SELECT DATE_FORMAT((`date` - INTERVAL (DAYOFMONTH(`date`) <= 5) MONTH), '%Y-%m') AS month,
	SUM(`num`) AS total
FROM `hoge`
GROUP BY month

として、日付が5日までなら月を - 1 するようにしたらうまくいきました。

チャイを作っチャイました

カルダモン 2粒
ブラックペッパー 2粒
コリアンダー 2粒
シナモン 1本
生姜 3切れ
ナツメグパウダー 1振り
紅茶(アッサム) スプーン1杯
270ml
牛乳 270ml

 

シナモンは適当な細かさに折る。
カルダモンは殻を剥いて身を包丁の面で潰す。
他のスパイスも包丁で潰す。

上記のスパイスと茶葉を水で煮る。
水は水のまま火にかけました。最初は中火。
ここでナツメグを一振り。

 

沸騰しそうになったら弱火に。

さらに沸騰しそうになったら牛乳を入れる。

 

そこから弱火でさらに煮詰めて沸騰しそうになったら終了。
すぐにストレーナーで越して完成。
これでマグカップ2杯ちょっとくらい。

お好みで砂糖を入れて飲みます。
甘いはうまい。

思ったより生姜が強かった。(嫌いじゃないが想像とは違った)
もっとシナモンのスパイシー甘さみたいな香りが欲しかったです。
砂糖を小さじ2杯ぐらいがうまい。