编写查询以获取要显示在每条记录上的相似ID的总和

问题描述

我想计算相同ID的总和并显示在每条记录中。预期样本如下所示

Expectd result

解决方法

使用分析SUM():

SELECT
      Code,SUM(Value) OVER (PARTITION BY Code) as Value
  FROM mytable;
,

通过窗口求和应该可以保持每条记录的总和。 ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING确保将所有值都考虑在内

SELECT
   Code,SUM(Value) OVER (PARTITION BY Code ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)
FROM
  mytable;
,

通过代码从您的表名组中选择ID,sum(值)