sup*_*oom 4 mysql row count zero
在mysql中,我获得了表"得分"如下
Id Date Name score
1 2011-08-24 00:00:00 sharique 10
2 2011-08-24 00:00:00 joe 11
3 2011-08-24 00:00:00 vijay 5
4 2011-08-25 00:00:00 sharique 0
5 2011-08-25 00:00:00 joe 11
Run Code Online (Sandbox Code Playgroud)
现在我正在运行查询
SELECT date,count(id) as count FROM scores where `name` = 'vijay' group by `date`;
Run Code Online (Sandbox Code Playgroud)
我得到了结果
date count
2011-08-24 00:00:00, 1
Run Code Online (Sandbox Code Playgroud)
代替
date count
2011-08-24 00:00:00, 1
2011-08-25 00:00:00, 0
Run Code Online (Sandbox Code Playgroud)
我怎样才能显示零计数的结果?
这是一个简单的方法:
SELECT s2.date, count(s1.id) as count
FROM (select distinct `date` from scores) s2
left join scores s1
on s1.`date` = s2.`date`
and s1.`name` = 'vijay'
group by 1
Run Code Online (Sandbox Code Playgroud)
这保证了表中每个不同日期的每个人的日期