我有一个名为" WasCancelled"在MySQL DB中,它是一个布尔类型。
我将数字0,1和2保存到它。
我需要一个可以计算有多少个,两个和零的查询。
例如: 我的专栏:
WasCanceled
-----------
0
0
1
1
1
2
0
0
0
2
0
0
1
我需要输出查询:
number | times
-------|------
"0" | 7
"1" | 4
"2" | 2
请帮忙。
谢谢。戴夫。
答案 0 :(得分:3)
您可以通过分组来完成此操作:
SELECT WasCancelled, COUNT(*)
FROM <Table>
GROUP BY WasCancelled
如果您需要更多信息,请查看此处了解有关Group By和Count的详细信息。
要在评论中包含问题:要限制特殊值,您可以添加WHERE
子句:
SELECT WasCancelled, COUNT(*)
FROM <Table>
WHERE WasCancelled = "1"
GROUP BY WasCancelled
在进一步的问题中,请编辑您的整体问题,以包含子问题或打开新主题。请阅读How To Ask Good Questions。
SQL
也允许HAVING
子句,类似于WHERE
,但允许比较聚合值。有关详细信息,请参阅here(例如,您想知道哪个值出现的次数超过5次等)。
答案 1 :(得分:0)
将 GROUP BY 与 COUNT 功能一起使用:
试试这个:
SELECT WasCanceled, COUNT(1) as times
FROM tableA
GROUP BY WasCanceled;
答案 2 :(得分:0)
我认为这可能有用!
select
count(WasCanceled) as CNT, WasCancelled
from
YourTableNameHere
group by
WasCanceled
答案 3 :(得分:0)
这对我有用
SELECT WasCanceled AS number, COUNT(WasCanceled) AS times FROM tblTest GROUP BY WasCanceled