我有一个查询,它返回在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上解决了。问题解决了,但我需要修改查询,现在我还需要显示空值。
由于
答案 0 :(得分: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
答案 1 :(得分:0)
零计数值是什么意思?也许你需要:
select date(update_timestamp) as date, count(*) users, '0' AS zero
也许您想要获取没有用户的日期?
只需在第一个用户注册之前找到日期,并像上面一样为其指定零。