【问题标题】:Counting rows from Where Clause and display every count in a different column从 Where 子句计算行数并在不同的列中显示每个计数
【发布时间】:2015-07-21 13:53:06
【问题描述】:

您好,我有一个 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 年

但我想要的是类似的东西

状态 1 计数 - 状态 2 计数 - 时间

10 - 10 - 2014 年

19 - 11 - 2015 年

由于我的数据库有大约 1 条 mio 记录,因此有没有一种很好且有效的方法。我想使用这些数据在表格中显示它而无需进一步操作。

提前致谢

【问题讨论】:

    标签: mysql sql select where-clause


    【解决方案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
    

    您需要根据想要查看的任何状态对其进行调整。

    【讨论】:

      猜你喜欢
      • 2014-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-06
      • 1970-01-01
      • 1970-01-01
      • 2017-07-22
      • 1970-01-01
      相关资源
      最近更新 更多