我有一个非常简单的表,在SQL中看起来像这样:
EnglishCount
0
1
2
1
3
4
6
1
2
只有一列,其值为0到10。
我想要做的是创建一个报告,告诉我这个:
EC Qty
1 3
2 2
3 1
4 1
6 1
有人可以给我一个如何实现这个目标的建议。请注意,我希望EC的值按顺序显示,并且只显示行具有EnglishCount>的计数。 0
答案 0 :(得分:1)
这是一种正确的方法:
SELECT
EnglishCount AS EC,
COUNT(*) AS Qty
FROM yourTable
GROUP BY EnglishCount
HAVING COUNT(*) > 0
ORDER BY
CASE WHEN COUNT(*) = 1 THEN 0 ELSE 1 END,
EnglishCount
答案 1 :(得分:0)
select EnglishCount as EC,count(*) as Qty from table group by EnglishCount;
如果您想通过EnglishCount订购,
select EnglishCount as EC,count(*) as Qty from table group by EnglishCount order by EnglishCount;
如果您想按计数订购,
select EnglishCount as EC,count(*) as Qty from table group by EnglishCount order by Qty;
答案 2 :(得分:0)
select EnglishCount as EC,count(*) as Qty from TableName where EnglishCount > 0 group by EnglishCount;
试试这个......