1

ページビューと電子メールに関する典型的な統計を含むテーブルがあります。メールは行を作成し、ページビューは行を作成します...

過去 30 日間 (たとえば) の毎日のページ ビューとメールをグラフ化したいので、日と値を表示する必要があります... ゼロであっても。結果から欠落した日や、チャートが崩れることはありません。

PageViews Table:
UniqueID | PageID | DateTime

Emails Table:
UniqueID | SenderEmail | RecipientID | RecipientEmail | DateTime

これを1つのクエリにする必要はありませんが、問題はどちらのクエリでも同じままです...特定のページが表示されなかった日(または範囲によるグループに応じて時間、または月..)がある場合、それは結果配列から単純に省略されます。

同様に、ページ ビューがあったのに電子メールが表示された日がある場合、電子メール カウント クエリには穴があります...

基本的に、私は Google アナリティクス タイプのグラフを作成しようとしており、統計テーブルにデータがない日にゼロを表示する線が必要です...

ある種の左自己結合が機能する可能性があると思いますが、機能しないようです。列 (値) が 1 つしかなく、行が 1 ~ 31 の整数テーブルをいじりました。

MYSQL の専門家が助けてくれますか?

4

1 に答える 1

0

この問題の標準的な解決策は、ヘルパー テーブルを作成し、予想されるクエリに関連するすべての日付を入力することです。

該当する SO Q&A は次のとおりです。

MySQL で日付のギャップを埋める方法は?

于 2010-06-21T19:56:18.030 に答える