1
私はタイムスタンプとイベントを文字列として保持するテーブル 'Messages'を持っています。私は過去30日間に何種類のイベントが発生したかを表示したい。日付ごとに複数の列を選択
ので、出力が好きなはずです。
date event_1 event_2
...
2017-08-01 4 0
2017-08-02 0 0
2017-08-03 5 3
2017-08-04 0 2
...
重要なのは、毎日が(全くイベントが発生しない場合でも)が表示されるということです。これは動作しません
SELECT distinct(DATE(MESSAGE.DATEFIELD)) as 'date',
IF(MESSAGE.EVENT = 'event_1', COUNT(MESSAGE.ID), 0) AS 'event 1',
IF(MESSAGE.EVENT = 'event_2', COUNT(MESSAGE.ID), 0) AS 'event 2'
FROM MESSAGE
WHERE DATE(MESSAGE.DATEFIELD) >= DATE(NOW()) - INTERVAL 30 DAY
GROUP BY date, MESSAGE.EVENT
:
私のコードは次のようになります。イベントごとに複数の日数が追加されます。私の間違いを私に指摘できますか?ありがとう!
完璧!ありがとう – user1482309