だから私がやろうとしていることは少しトリッキーです。指定された時間枠のカウントを返すことができる SQL クエリを考え出そうとしています。だから私はテーブル「v」を持っています。以下は、表 v の基本的なデータです。
Table v
_____________
id p_id created_at
1 1 2009-06-09 18:54:17
2 2 2009-06-09 21:51:24
3 2 2009-06-10 18:53:51
4 1 2009-06-10 01:20:36
5 1 2009-06-10 11:20:36
基本的に、指定された期間 (時間、日、週、月、年) の結果を取得したいと考えています。私はこれを何日も機能させています...しかし、ゼロのカウントを含む時間枠の結果を返すことができません。基本的に、時間枠と区切り文字(時間、日など)を指定し、その時間枠内でテーブル v から行数を取得できるようにしたいと考えています。
これは私が現在試したことです:
select count(*) as count, date_format(created_at, "%m/%d/%y") as date from v where p_id = 56 group by date_format(created_at, "%m/%d/%y");
戻り値
+-------+-------------------------------------+
| count | date_format(created_at, "%m/%d/%y") |
+-------+-------------------------------------+
| 3 | 06/09/09 |
+-------+-------------------------------------+
しかし、これは時間枠を考慮していません。何か案は?