統計 (左) とメッセージ (右) の 2 つの MySQL テーブルがあります。
+------------+---------+ +---------+------------+-----------+----------+
| _date | msgcount| | msg_id | _date | time | message |
+------------+---------+ +----------------------+-----------+----------+
| 2011-01-22 | 2 | | 1 | 2011-01-22 | 06:23:11 | foo bar |
| 2011-01-23 | 4 | | 2 | 2011-01-22 | 15:17:03 | baz |
| 2011-01-24 | 0 | | 3 | 2011-01-22 | 17:05:45 | foobar |
| 2011-01-25 | 1 | | 4 | 2011-01-22 | 23:58:13 | barbaz |
+------------+---------+ | 5 | 2011-01-23 | 00:06:32 | foo foo |
| 6 | 2011-01-23 | 13:45:00 | bar foo |
| 7 | 2011-01-25 | 02:22:34 | baz baz |
+---------+------------+-----------+----------+
stats.msgcount を入力しましたが、実際にはまだ空です。次のクエリ方法を探しています。
- すべての stats._date のメッセージ数をカウントします (2011-01-25 のゼロ msgcount に注意してください)
- messages.time は 24 時間形式です。5 時 (17:00:00) 以降のすべてのメッセージは、翌日にカウントされます (2011-01-23 の msg_id 3 と 4 がカウントされることに注意してください)。
- すべてのカウントを保持するように stats.msgcount を更新します
特に「17時以降は翌日カウント」の部分が気になります。これは (My)SQL で可能ですか?