postgresql计算结果集的总和

时间:2011-09-11 03:04:01

标签: postgresql sum calculated-columns

postgresql中是否有内置函数来获取列的总和。

只是一个简单的例子

CREATE TABLE sample_table (a INTEGER, b REAL);
INSERT INTO sample_table (a, b) VALUES (5, 7.22);
INSERT INTO sample_table (a, b) VALUES (5, 5.6);
INSERT INTO sample_table (a, b) VALUES (1, 23.5);
INSERT INTO sample_table (a, b) VALUES (1, 2.2)

现在假设我想得到'b'的所有值的总和,其中a = 5
我该怎么做?

2 个答案:

答案 0 :(得分:26)

我认为这只是

SELECT SUM(b) FROM sample_table WHERE a = 5;

您可以在此处了解所有Postgres聚合函数:

http://www.postgresql.org/docs/current/static/functions-aggregate.html

答案 1 :(得分:4)

SELECT sum(b) 
FROM sample_data
WHERE a = 5

您还可以使用group by来获取a的不同值的列表以及与每个a对应的b的总和:

SELECT a, sum(b)
FROM sample_data
GROUP BY a