Mysql计数结果为零值

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)

我怎样才能显示零计数的结果?

Boh*_*ian 9

这是一个简单的方法:

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)

这保证了表中每个不同日期的每个人的日期