如何使用EXCEL或ORACLE在单个列中显示相同的值

您好,我需要在“C”列中的公式计算/添加基于列A ID的B列的数量。 如果同一个ID中有多个金额,则应该加上总金额,并将结果显示在“C”列中作为一行。

样本数据的图像

输出可以从Oracle SQL查询或Excel公式获得。您的帮助将不胜感激。

您可以使用类似下面的分析函数从Oracle本身获得相同的输出。

SUM() OVER(PARTITION BY ... ) – >这实际上是做累计和

 WITH MYTABLE(ID,AMT) AS (SELECT '2UF2', '500' FROM DUAL UNION ALL SELECT '2TC6', '300' FROM DUAL UNION ALL SELECT '2TC6', '200' FROM DUAL UNION ALL SELECT '2TC6', '800' FROM DUAL ) SELECT ID, AMT, CASE ROW_NUMBER() OVER(PARTITION BY ID ORDER BY NULL) WHEN 1 THEN SUM(AMT) OVER(PARTITION BY ID ORDER BY NULL) END AS FORMULA FROM MYTABLE ORDER BY ID, FORMULA NULLS LAST; 

SQL小提琴演示

你可以在oracle中使用汇总

selectid,amt,sum(amt)null从表nullGroup按汇总(id,amt)

有关更多详情,请参阅下面的链

https://oracle-base.com/articles/misc/rollup-cube-grouping-functions-and-grouping-sets

在SQL中,你需要一个聚合函数,在这种情况下sum和一个group by子句。 通用查询应该如下所示:

 Select sum(b) from table group by a 

我希望这有帮助。