2

7日間隔で特定の日に登録されたユーザーの総数を返すクエリがあります。また、ゼロカウントデータを取得して、グラフにプロットできるようにします。ゼロカウント値を取得する方法は?

クエリ:

select date(update_timestamp) as date, count(*) users
from registered
where date(update_timestamp) between date_sub(sysdate(), interval 7 day) and sysdate()
group by date(update_timestamp)

この投稿http://bit.ly/12irdyfで解決された以前のクエリで問題はほとんどありませんでした。問題は解決されましたが、クエリを変更する必要があるため、null値も表示する必要があります。

ありがとう

4

2 に答える 2

3

その年の各日付のエントリを持つcalender_tableを保持するための最良の方法。

select    date(update_timestamp) as date, count(*) users
from      calender_table c
left join registered r
on        date(update_timestamp)=c.date
where     c.date between date_sub(sysdate(), interval 7 day) and sysdate()
group by  c.date
于 2012-12-11T07:19:46.390 に答える
0

ゼロカウント値とはどういう意味ですか? たぶんあなたが必要です:

select date(update_timestamp) as date, count(*) users, '0' AS zero

ユーザーがいなかったときの日付を取得したいと思ったことはありませんか?

最初のユーザーが登録する前の日付を見つけて、上記のようにゼロを割り当てます。

于 2012-12-11T07:15:59.637 に答える