您好我有一个MySql查询如下:
Select Count(*),status,time from table where Status in (2,3,8) group by status,time
输出正常我得到类似
的内容计算状态时间
10 - 1 - 2014
10 - 2 - 2014
19 - 1 - 2015
11 - 2 - 2015
但我想拥有的是像
Status1的计数 - Status2的计数 - 时间
10 - 10 - 2014
19 - 11 - 2015
因为我的数据库有大约1 mio记录,所以有一种很好而有效的方法吗?我想使用这些数据在没有进一步操作的情况下在表格中显示它。
提前致谢
答案 0 :(得分:1)
以下内容应该有效:
SELECT SUM(IF(`Status` = 1,1,0) ) CountOfStatus1,SUM(IF(`Status` = 2,1,0) ) CountOfStatus2,TIME FROM TABLE WHERE STATUS IN (1,2) GROUP BY TIME
您需要针对您想要查看的任何状态进行调整。