下記のようなテーブルがあるときに、直近1日間,7日間,30日間に購入されたproductの
ユニーク数を日毎に集計したいと思っています。
テーブルイメージ create date / product / price 2016-05-12 15:16:17 / bread / 340 2016-05-13 11:10:31 / icecream / 280
抽出イメージ date / yesterday / 7days / 30days 2016-05-12/ 3 / 7 / 31 2016-05-13/ 4 / 8 / 29
上記のように、5/12時点では、
前日に購入されたユニークproductが3点、直近の30日間では31点
のような結果を抽出したいのですが、方法のイメージが付きません。
方向性だけでもご教授いただけると幸いです。
よろしくお願いいたします。
※追記
本日分については、下記のSQLで出せると思うのですが、これを日ごとに出す方法がわかりません。
select count(case when datediff(DATE_FORMAT(NOW(), '%Y-%m-%d'),DATE_FORMAT(create_date, '%Y-%m-%d')) = 1 then product end) as yesterday, count(case when datediff(DATE_FORMAT(NOW(), '%Y-%m-%d'),DATE_FORMAT(create_date, '%Y-%m-%d')) between 1 and 7 then product end) as 7days, count(case when datediff(DATE_FORMAT(NOW(), '%Y-%m-%d'),DATE_FORMAT(create_date, '%Y-%m-%d')) between 1 and 30 then product end) as 30days from テーブル名

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/05/20 07:58