[英]Find total number of tickets per day within a specific date range
我正在尝试编写一个查询,使我能够执行以下操作:
“在特定日期范围内查找每天的开放和封闭门票总数”。
这是我到目前为止所得到的
SELECT
COUNT(tikcet_id) as totalTickets,
COUNT(CASE WHEN ticket_status = 'Complete'
THEN 1
ELSE NULL END) as closedTickets,
DATE(ticket_date)
FROM tickets
WHERE (DATE(ticket_date) BETWEEN DATE('2014-07-18') AND DATE('2014-07-30'))
GROUP BY ticket_date
这是我得到的结果,可以算票数,只是不能按照我想要的方式对它们进行分组。
TotalTickets| ClosedTickets| ticket_date
1| 0| 2014-07-21 10:00:00
1| 0| 2014-07-21 10:21:21
0| 1| 2014-07-21 11:45:12
0| 1| 2014-07-22 09:21:24
0| 1| 2014-07-22 09:43:23
我希望将它们按天分组,例如,我应该能够看到类似的内容:
TotalTickets| ClosedTickets| ticket_date
2| 1| 2014-07-21
2| 0| 2014-07-22
做这个
GROUP BY DATE(ticket_date)
代替
GROUP BY ticket_date
您已经在SELECT
子句中完成了操作。
顺便说一句,写这个的更短方法
COUNT(CASE WHEN ticket_status = 'Complete'
THEN 1
ELSE NULL END) as closedTickets,
是
SUM(ticket_status = 'Complete') as closedTickets,
布尔表达式的取值为true
或false
或1
或0
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.