查询分组并创建组总计

时间:2012-10-13 10:37:36

标签: mysql sql group-by

我的表就像这样

id     views     country    
1       44        A
2       43        A
3       899       B
4       242       A
5       3204      B
etc.

我想计算一个国家发生的次数。

例如,在上述情况下,国家A正在发生3次。因此,对于我的查询,我希望能够正确显示每条记录发生的次数,但除了计数之外,我还要添加视图。在上述情况下,我希望国家/地区A出现3次,并且视图为44 + 43 + 242 = 329的总和,但我的查询仅显示第一个视图输出:44

这是我的查询

 SELECT count( * ) value, country, concat( country , '_', views ) prod 
 FROM tableA
 GROUP BY prod

2 个答案:

答案 0 :(得分:2)

SELECT country, COUNT(*), SUM(views) FROM tableA GROUP BY country

sqlfiddle上查看。

答案 1 :(得分:1)

SELECT
    count( * ) value, 
    country, 
    concat(country , '_', SUM(views)) prod 
FROM
    tableA 
GROUP BY country