2011-11-25 69 views
11

我正在使用mysql和php。为每个不同的行选择计数(mysql和php)

我有一列有一列。我可以显示唯一行:

select distinct id from id_table 

这可能显示

1 
2 
3 
5 

我想要做的是显示有1的,2的等的数量。

我能做

select count(id) from id_table where id = 1 

但后来我不得不运行每... ...单排......而随着行数十万,不好的查询。

有没有办法返回每个不同项目的计数组成的数组

数据

1, 1, 1, 2, 3, 3, 5 

结果

3, 1, 2, 1 

感谢

回答

18
select id, count(id) 
from table 
group by id 

如果只想要计数的ID,然后

select count(id) 
from table 
group by id 

这里是由子句

http://www.w3schools.com/sql/sql_groupby.asp

+0

组的一个简单的教程使用第一溶液。谢谢。 –