由另一列分组的SQL求和列

问题描述 投票:0回答:1

我对SQL很新,这已经让我感到困惑了一段时间!

我开始时需要通过playerID聚合一堆列。

+-----------+------------+---------------+--------+
| playerID  |  AA        | BB            | CC     |
+-----------+------------+---------------+--------+
|      Adam | 5          | 2             |     10 |
|      Josh | 12         | 3             |     10 |
|       Sam | 8          | 5             |     15 |
|      Adam | 2          | 5             |     25 |
|       Sam | 4          | 4             |      5 |
|      Josh | 10         | 3             |      6 |
|       Adam| 4          | 2             |      7 |
+-----------+------------+---------------+--------+

理想情况下,最终结果将为每个玩家总结AA,BB和CC并给出类似的东西

| playerID  |  AA        | BB            | CC     |
+-----------+------------+---------------+--------+
|      Adam | 11         | 9             |     42 |
|      Josh | 22         | 6             |     16 |
|       Sam | 12         | 9             |     20 |
+-----------+------------+---------------+--------+

我设法至少将同名的记录组合在一起

SELECT playerID, COUNT(*) c FROM playertable GROUP BY playerID

但是我不确定如何将记录分组后如何正确地加总。任何帮助将不胜感激!!

mysql sql select group-by sum
1个回答
1
投票

使用SUM()聚合函数。

SELECT playerID, 
       SUM(AA) AS AA, 
       SUM(BB) AS BB, 
       SUM(CC) AS CC
FROM playertable 
GROUP BY playerID

这是一个Demo

© www.soinside.com 2019 - 2024. All rights reserved.