如何汇总SQL表中的行?

时间:2014-04-22 16:54:45

标签: sql sum rows

我有一张表:

EMP_NAME HOURS_WORKED
-------- ------------
Jane               10
Jane                2
Jane               18
Jane               12
Alex                7
Alex                3
Alex                5
Danny              20
Danny              16

我想将其浓缩成:

EMP_NAME TOTAL_HOURS_WORKED
-------- ------------------
Jane                     42
Alex                     15
Danny                    36

我尝试了这个,但它没有运行:

SELECT
  DISTINCT EMP_NAME,
  SUM(HOURS_WORKED) TOTAL_HOURS_WORKED
  FROM EMPLOYEES
;

据我所知,您可以将列与+合并,然后使用SUM()所有行汇总到一个单元格中,但我不知道如何组合这样的行。

我已经完成了最好的Google-Fu,但我仍然找不到任何可以帮助我的方法:/


  

请注意,这是我现场制作的示例表。我永远不会使用名称作为主键;)

1 个答案:

答案 0 :(得分:2)

试试这个:

SELECT EMP_NAME,
SUM(HOURS_WORKED) TOTAL_HOURS_WORKED
FROM EMPLOYEES
GROUP BY EMP_NAME