我有一个包含以下值的表 T1
我需要一个带有附加列的结果表,该列是最新的平均值。 即,
x1=1000.45
x2= (1000.45+2000.00)/2
x3= (1000.45+2000.00+3000.50)/3
x4= (1000.45+2000.00+3000.50+4000.24)/4
结果表应如下所示:
我需要在Oracle数据库中编写SQL语句来向结果表添加一列,其中列值为x1、x2、x3、x4。
最佳答案
为此您需要使用分析函数。我未经测试的SQL如下:
SELECT
date,
division,
sum_sales,
AVG( sum_sales ) OVER ( ORDER BY date ROWS UNBOUNDED PRECEDING )
FROM
table;
date
是 Oracle 中的保留字,因此如果您使用它作为真实的列名,则需要将其包含在引号中。
关于更新列的 SQL 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33428644/