小组总结

时间:2013-11-16 14:32:39

标签: mysql group-by sum

我需要得到组值的总和。我试过这个问题:

SELECT COUNT(*) FROM amx_bans WHERE ban_length=0 and expired=0 AND server_name LIKE '%COD%' GROUP BY server_name

但它返回的内容如下:

  

COD MOD 32

     

COD MODX 32

     

COD MODY 32

这些名称变体实际上是同一台服务器所以我需要这些值的总和,在这种情况下为96,我该如何实现呢?

2 个答案:

答案 0 :(得分:0)

如果此查询返回1个服务器的所有数据,则只需删除GROUPING,您将在一行中获得该96个总和。 COD的所有变体都将分为一个计数。

SELECT COUNT(*) FROM amx_bans WHERE ban_length=0 and expired=0 AND server_name LIKE '%COD%' 

答案 1 :(得分:0)

如果我正确理解您的问题,您应该使用sum(..)而不是计数(*)。

SELECT
    server_name, SUM(<your column name>) 
FROM
    amx_bans
WHERE
    ban_length=0 AND
    expired=0 AND
    server_name LIKE '%COD%'
GROUP BY
    server_name