Mysql 按日期统计有条件分组的所有项目

Mysql 按日期统计有条件分组的所有项目,mysql,Mysql,我有一个数据如下 | 2015-10-01 00:18:55 | 100021397 | canceled | | 2015-10-01 02:05:16 | 100021398 | processing | | 2015-10-01 02:15:23 | 100021399 | processing | | 2015-10-01 02:17:40 | 100021400 | processing | |

我有一个数据如下

| 2015-10-01 00:18:55 | 100021397    | canceled           |
| 2015-10-01 02:05:16 | 100021398    | processing         |
| 2015-10-01 02:15:23 | 100021399    | processing         |
| 2015-10-01 02:17:40 | 100021400    | processing         |
| 2015-10-01 02:28:02 | 100021401    | processing         |
| 2015-10-01 02:31:39 | 100021402    | processing         |
| 2015-10-01 02:44:13 | 100021403    | canceled           |
| 2015-10-02 00:00:35 | 100021519    | canceled           |
| 2015-10-02 01:05:22 | 100021520    | processing         |
| 2015-10-02 01:06:42 | 100021521    | processing         |
我需要的输出分组的日期与格式

Date         | Number Of all Item  | Number of Item with status not canceled |
2015-10-01   |       7             |          5
2015-10-02   |       3             |          2
创建前两列非常容易,但是第三列有点棘手,请使用
SUM()
帮助您可以“计数”布尔表达式的结果(返回0或1,false或true)

SELECT DATE(date), COUNT(DISTINCT item), SUM(status != 'canceled')
FROM your_table
GROUP BY DATE(date);
select  
  date(`date`) as `date`, 
  count(*) as `Number Of all Item`, 
  sum(if(status!='canceled',1,0)) as `Number of Item with status not canceled`
from tbl1 group by date(`date`)