のようなデータを持つテーブルがあります:のMySQL:日付範囲の間のすべての日付を選択し、テーブルのデータが一致します日付
-----------------------
| id | date |
-----------------------
| 1 | 2016-07-11 |
| 2 | 2016-07-11 |
| 3 | 2016-07-15 |
| 4 | 2016-07-15 |
| 5 | 2016-07-15 |
| 6 | 2016-07-16 |
| 7 | 2016-07-19 |
| 8 | 2016-07-20 |
-----------------------
私は日付の範囲(すべての日付)とIDの数を取得したいですレコードが存在しない場合は0を返します。 2016年7月20日に2016年7月10日の間の日付のために実行した場合
、結果は次のようになります。
--------------------------
| date | count(id) |
--------------------------
| 2016-07-10 | 0 |
| 2016-07-11 | 2 |
| 2016-07-12 | 0 |
| 2016-07-13 | 0 |
| 2016-07-14 | 0 |
| 2016-07-15 | 3 |
| 2016-07-16 | 1 |
| 2016-07-17 | 0 |
| 2016-07-18 | 0 |
| 2016-07-19 | 1 |
| 2016-07-20 | 1 |
--------------------------
私はgetting a date rangeのためのソリューションを見つけたが、どのように見つけ出すことができませんでしたテーブル内の日付のIDを数えます。
ありがとうございます!
集計関数 "Count"を使用して、選択クエリを使用して、特定の日付のレコードを数えないようにすることができます。 –
恒久的な毎日または毎月の[ヘルパーテーブル](http://stackoverflow.com/a/37739514)を1度作成し、頻繁に使用します。毎回それらを一緒にハッキングする、はるかに高速な結合を行います。 – Drew
ドリュー、本当ですか? – Strawberry