0

我有一个如下表,有 3 列。给出了样本数据

column_1    column_2    column_3
   A           a           10
   A           b           20
   B           a           10
   A           a           10
   B           a           30
   A           b           40
   A           c           10
   C           a           20   

我想根据 column_1 和 column_2 的值得到 column_3 的总和。这意味着我想获得 column_3 中的值的总和,这些值对于 column_1 具有“A”,对于 column_2 具有“a”,依此类推..

Sample output is given bellow
     column_1    column_2    SUM(column_3)
       A           a              20
       A           b              60
       A           c              10
       B           a              40
       C           a              20        

有人可以告诉我怎么做吗

4

4 回答 4

4

尝试这个:

SELECT SUM(column_3), column_1, column_2 FROM table GROUP BY column_1, column_2

GROUP BY命令声明您要SUM使用名称后面的列的不同值对聚合函数 () 进行分组GROUP BY。它们也出现在SELECT查询的部分中并不是“必需的”,但这是一种很好的做法(也是知道哪一行代表哪个分组的唯一方法。

显然替换table为实际的表名。

于 2013-10-01T03:34:15.493 回答
0

您可以将 group by 与 col1 和 col2 一起使用,并将 col3 相加,如下所示

SELECT   SUM (col3)
    FROM test_table
GROUP BY col1, col2
于 2013-10-01T03:39:04.560 回答
0

select column_1, column_2, SUM(column_3) from table group by column_1, column_2

group by 允许您根据其他列的分组将聚合函数应用于列。

向后思考,group by column_1, column_2可以认为是:“给我 column_1 和 column_2 的所有唯一组合。SUM(column_3)然后选择将取 column_3 中每个组的条目的总和。

于 2013-10-01T05:45:58.643 回答
-1

试试这个...

SELECT SUM(column_3), column_1, column_2 FROM table   
GROUP BY column_1, column_2
于 2013-10-01T03:39:26.057 回答