我有一张包含以下内容的表格:
store Qty
----
store1 1
store2 2
store1 3
store2 2
我想输出这个:
------------
store Qty
store2 2(value '2' occurs 2 times)
store1 0(value '2' occurs 0 times)
我想按降序返回值为{2}的列Qty
的出现次数(发生次数)。
答案 0 :(得分:5)
您需要条件聚合(即使用带有聚合函数的case
语句):
select store, sum(case when Qty = '2' then 1 else 0 end) as Qty
from table t
group by store;
答案 1 :(得分:2)
SELECT t.store, COUNT(QTY) AS QTY2
FROM TABLE T
WHERE t.QTY = 2
GROUP BY t.store
ORDER BY COUNT(QTY) DESC
这应该有效。它将提供按商店分组的2个数量的计数,并根据存在的数量以降序显示商店。