【问题标题】:SQL Summing Columns Grouped By Another Column按另一列分组的 SQL 求和列
【发布时间】:2018-08-12 16:28:04
【问题描述】:

我对 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】:

    使用SUM()聚合函数。

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

    这是Demo

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-17
      • 2014-10-20
      • 1970-01-01
      • 2020-12-06
      相关资源
      最近更新 更多