这可能是超级简单的事情......但现在我想不出如何在一个声明中做到这一点。
我知道我可以选择 count(id) WHERE status = APP,然后重复所有计数。但我想在一个查询中完成它。我会按城市分组,然后按状态和总和分组吗?
表如下......
City | Status |
City 1 APP
City 1 NH
City 1 APP
City 1 NEW
City 2 NEW
City 2 APP
City 2 APP
City 2 NH
我想返回以下数组。
{[cityname]=>City1,[Total]=>4,[APP]=>1,[NH]=>1,[NEW]=>2},
{[cityname]=>City2,[Total]=>4,[APP]=>2,[NH]=>1,[NEW]=>1}
我目前的查询是...
SELECT COUNT(id) as total, city WHERE status = 'APP' GROUP BY city
SELECT COUNT(id) as total, city WHERE status = 'NH' GROUP BY city
SELECT COUNT(id) as total, city WHERE status = 'NEW' GROUP BY city
我知道这非常简单,但是已经有一段时间了,我忘记了如何将它们准确地组合成一个语句。