>2011-06-18
>2011-06-16
>2011-06-12
3日じゃなくないですか?
結果がdateだけではなくなりますが、以下の感じでどうでしょうか。
SELECT DATE_FORMAT(table_a.date,'%Y-%m-%d') as formatdate,date
FROM `table_a`
WHERE DATE_FORMAT(table_a.date,'%Y-%m-%d') >= date_add(CURRENT_TIMESTAMP(), interval -3 DAY)
GROUP BY formatdate
日付だけ取りたいなら
SELECT DISTINCT DATE_FORMAT(table_a.date,'%Y-%m-%d') as date
FROM `table_a`
WHERE DATE_FORMAT(table_a.date,'%Y-%m-%d') >= date_add(CURRENT_TIMESTAMP(), interval -3 DAY)
とするとか
# WHERE句でDATE_FORMATしていますが、日単位になるのかどうかわからない(未検証)なので、変換しています。
質問者
お礼
回答ありがとうございます。
> 3日じゃなくないですか?
table_aの中での3日分を取得したかったのです。
以下で取得することができました。
select distinct date_format(table_a.date,'%Y-%m-%d') as formatdate from table_a order by formatdate desc limit 3;
お礼
回答ありがとうございます。 > 3日じゃなくないですか? table_aの中での3日分を取得したかったのです。 以下で取得することができました。 select distinct date_format(table_a.date,'%Y-%m-%d') as formatdate from table_a order by formatdate desc limit 3;