SQL计算表中一个列中各数的出现次数

SQL数据库中有表A,在表A中有列名为B的列,B列中的数据为01到36。如何编写SQL语句查询B列中01到36各数的出现次数?
SQL语句select count(B) from A where B = 01可以查询到01的出现次数。怎样才能使用一个语句就能循环查询到01到36的出现次数?

select countB)from A group by B order by B

SQL语句就可以做了,例检索表格aaa,添加一列“re_num”,显示a列值重复的次数,

次数为表格按a列分组计算记录数:

select a,count(a) as 're_num' from aaa group by a,

select a1.a2.re_num from 

aaa a1 

join 

(select a,count(a) as 're_num' from aaa group by a) a2 

on a1.a = a2.a;

select sum(datac.COUNT_VALUE)

from T_JL_COUNT_DATA datac

, T_JL_XC_RESULT a

where datac.COUNT_NO=45 and a.id=datac.RESULT_ID。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-12-15
select B, count(*) -- 计算个数,速度快于count(字段). 因为 count(字段)会先判断这个字段是否为空,只计算非空的个数。所以这里直接用count(*)。
from A
group by B本回答被提问者和网友采纳
第2个回答  2016-08-28
select B, count(B) from A group by B
第3个回答  2016-08-28
select count(B) from A group by B order by B
相似回答