から行を数えるので、私はこのテーブルのmysql - 二つのテーブル
log_inに
+---------+------------+---------+
| date_id | date_today | user_id |
+---------+------------+---------+
| 1 | 2017/03/19 | 16 |
| 2 | 2017/03/20 | 17 |
| 3 | 2017/03/20 | 12 |
| 4 | 2017/03/21 | 16 |
| 5 | 2017/03/22 | 10 |
| 6 | 2017/03/22 | 11 |
+---------+------------+---------+
file_downloads
+---------+------------+---------+
| date_id | date_today | user_id |
+---------+------------+---------+
| 1 | 2017/03/20 | 17 |
| 2 | 2017/03/20 | 17 |
| 3 | 2017/03/20 | 12 |
| 4 | 2017/03/20 | 17 |
| 5 | 2017/03/20 | 12 |
| 6 | 2017/03/20 | 12 |
| 7 | 2017/03/20 | 12 |
| 8 | 2017/03/20 | 12 |
| 9 | 2017/03/22 | 10 |
| 10 | 2017/03/22 | 10 |
| 11 | 2017/03/22 | 11 |
+---------+------------+---------+
を持っており、これが私の望ましい結果である:
+------------+-----------+--------+
| date_today | login_num | dl_num |
+------------+---------+----------+
| 2017/03/19 | 1 | 0 |
| 2017/03/20 | 2 | 8 |
| 2017/03/21 | 1 | 0 |
| 2017/03/22 | 2 | 3 |
+------------+-----------+--------+
I任意の助けをまだmysqlに新しいです非常に高く評価されるだろう。ありがとうございました! :)
私はあなたが書いたコードをお手伝いします。 – nogad
'login_num'を計算する1つのサブクエリを書いてください。これは' dl_num'を計算する別のサブクエリです。これらは両方とも 'COUNT(*)'と 'GROUP BY'を使うべきです。それらに参加するにはLEFT JOINを使用してください。 http://stackoverflow.com/questions/75752/what-is-the-most-straightforwardway-to-pad-empty-dates-in-sql-results-on-ehehe – Barmar
なぜですか?はっきりと日付の識別子ではない場合は、 'dateId'という名前のフィールドがありますか? –