我有一张table result
, name
以及 created_at
比如:
id | name | result | created_at
1 | Sam | 1 | 2018-07-12 05:08:04
2 | Tam | 1 | 2018-07-12 06:08:04
3 | Qam | 0 | 2018-07-12 07:08:04
4 | Yam | 1 | 2018-09-12 04:08:04
5 | Xam | 0 | 2018-09-12 06:08:04
6 | Lam | 0 | 2018-11-12 07:08:04
(1代表通过,0代表失败)我想按创建日期对数据进行分组,该日期在单独的列中显示结果成功或失败的计数,如:
fail | pass | created_at
0 | 2 | 2018-07-12 05:08:04
1 | 1 | 2018-09-12 04:08:04
1 | 0 | 2018-11-12 07:08:04
我可以通过这个查询计算just pass或fail的值: select count(result) from call_history where result = 1 GROUP BY DATE(created_at)
,但无法为不同的行提供双where子句。
2条答案
按热度按时间hiz5n14c1#
我会这样写:
zbwhf8kr2#
你可以使用
case
表达式仅为成功/失败返回非空结果,然后使用count
,跳过null
学生: