我的表是:
name01 category01
name02 category01
name03 category02
name04 category02
name05 category02
name06 category02
name07 category02
.....
我想为每个类别计算名称的数量
我喜欢的输出是这样的(通过上面的例子):
category01 2
category02 5
...
感谢所有能帮助我的人......
答案 0 :(得分:5)
SELECT category, COUNT(*) FROM table GROUP BY category
尽管在非常大的表上计数可能有点慢,但是如果运行非常大的服务或对大量数据进行操作,您可以考虑缓存结果或对表进行非规范化。 (但是,这些技术假设一个非常大的表)
答案 1 :(得分:4)
这是非常基本的,但使用GROUP BY语句应该给出所需的结果。即:
SELECT category, COUNT(*) FROM table GROUP BY category
答案 2 :(得分:0)
始终使用COUNT(1)来加快执行速度