按行合并行数

时间:2017-06-02 10:21:22

标签: sql postgresql

我有一个列namevalue,我需要编写一个select来将具有相同name的所有行合并为一行(类似{{1}除非我使用distinct,否则我无法合并/加distinct列。

示例:

value

结果将是:

name value
A     10
B     5
C     20
A     5
C     1
B     5

到目前为止,这是我的选择,但它并未“合并”,它完全符合我的示例。

A     15
B     10
C     21

2 个答案:

答案 0 :(得分:1)

select distinct
 "name", sum("value") over (partition by "name")
from table_name

你可以使用窗口功能

答案 1 :(得分:1)

select name, sum(value) value from yourTableName group by name