Hive 要按部门分组,请为配置单元中的整个表获取sum(sales)并使用sum(sales)创建单独的列?

Hive 要按部门分组,请为配置单元中的整个表获取sum(sales)并使用sum(sales)创建单独的列?,hive,Hive,我有一张这样的桌子 Department Sales A 2000 A 2000 A 3000 B 1000 B 4000 B 2000 C 2500 C 2000 C 2000 不,我希望我的输出像 Department

我有一张这样的桌子

Department     Sales
A               2000
A               2000
A               3000
B               1000
B               4000
B               2000
C               2500
C               2000
C               2000
不,我希望我的输出像

Department          Sales   Total_Sales
A                    7000     20500
B                    7000     20500
C                    6500     20500

如何使用配置单元、窗口功能实现这一点?

它可以是

SELECT DISTINCT
       Department,
       SUM(Sales) OVER (PARTITION BY Department) Sales,
       SUM(Sales) OVER () Total_Sales
FROM source_table
但是


可能更有用(总销售额将在附加行中计算,
部门为NULL
)。

您是否阅读了文档:?
SELECT Department,
       SUM(Sales) Sales,
FROM source_table
GROUP BY Department WITH ROLLUP 
select *,sum(sales) over() as Total_Sales 
from(select department,sum(sales) as sales from orders group by department)t1;