从Group By中获取出现次数

时间:2012-12-15 04:42:55

标签: sql count group-by

我在MySQL中有一个表

 id     hash                              keyword_id
 5      643876315258ecad248bf0de3bff71df    1
 6      643876315258ecad248bf0de3bff71df    4
 15     7ccd09a7b99d386855004a94ef35b42f    2
 16     7ccd09a7b99d386855004a94ef35b42f    3
 17     7ccd09a7b99d386855004a94ef35b42f    1

我想按照keyword_id的出现次数进行分组,所以我的结果应该是这样的。

keyword_id  occurrences 
1             2
2             1
3             1
4             1

我试过这样做:

select count(Distinct keyword_id) as "Total"
from default_keywords_applied
groupby keyword_id

但是我遇到了一些错误。

2 个答案:

答案 0 :(得分:2)

删除DISTINCT

SELECT keyword_id, COUNT(keyword_id) AS occurrences 
FROM default_keywords_applied 
GROUP BY keyword_id

See this SQLFiddle

@PeterJ said,查询中的group by中没有空格。

答案 1 :(得分:1)

mysql_query就像这样

select keyword_id,count(keyword_id) as occurance from table group by keyword_id