使用窗口函数的Impala中的总计大列

时间:2016-08-26 20:32:47

标签: window-functions impala

我正在寻找一种方法来在Impala中的所有组中执行“总计”列。

使用窗口函数很容易获得如下所示的分区组:

sum(x)over(分区A)

然而,似乎没有一个表达式被'all'分区。这是Impala的缺点吗?在postgress中,你可以将over语句留空。

1 个答案:

答案 0 :(得分:0)

partition子句是可选的。您可以编写如下查询:

select sum(x) over () from t;

例如:

[localhost:21000] > select id, sum(id) over () from tbl;
+----+-------------------+
| id | sum(id) OVER(...) |
+----+-------------------+
| 0  | 28                |
| 1  | 28                |
| 2  | 28                |
| 3  | 28                |
| 6  | 28                |
| 7  | 28                |
| 4  | 28                |
| 5  | 28                |
+----+-------------------+
Fetched 8 row(s) in 0.08s