【发布时间】:2016-11-30 10:15:03
【问题描述】:
我有一个如下结构的表
| id | a | b |
| 1 | 1 | 1 |
| 2 | 1 | 5 |
| 3 | 2 | 2 |
| 4 | 2 | 3 |
| 5 | 2 | 5 |
| 6 | 1 | 3 |
| 7 | 1 | 7 |
| 8 | 3 | 1 |
| 9 | 2 | 0 |
| 10 | 4 | 8 |
并且需要在“a”列中的每个组中计算“b”列中的总和,但要考虑行的顺序,即首先我们应该为a == 1添加1 + 5(id s 1 和 2),然后我们将添加 2 + 3 + 5 为 a = 2 (ids 3, 4, 5) 等等。
因此,结果我需要有这样的表格
| a | sum(b) |
| 1 | 6 |
| 2 | 10 |
| 1 | 10 |
| 3 | 1 |
| 2 | 0 |
| 4 | 8 |
请帮助编写一个 SQL 查询来执行此操作。
【问题讨论】:
-
哪个 postgres 版本?..
-
9.6,但理想情况下,代码不应附加到已定义的 PostgreSQL 版本,因为我想在 Apache Spark SQL 中使用它
标签: sql postgresql group-by pyspark-sql