我正在计算一系列数字,所计算的列之一是基于“ DTstamp”的“ Accountlink”的加权平均值计算。 问题是我需要最终结果(每个帐户链接)显示在新列中-每个帐户链接的每个帐户链接的最终结果-用于新的计算-如下例所示:
Accountlink WA_Calc WA_Calc_Final
1 20.00 30.00
1 40.00 30.00
1 30.00 30.00
2 15.00 20.00
2 35.00 20.00
2 28.00 20.00
图像上的是我正在编译的脚本的一部分。
但是,我只是遇到错误。
任何帮助和/或指导将不胜感激。
答案 0 :(得分:0)
您需要一列来指定顺序。 SQL表表示无序集,因此没有“最后一行”,除非有列指定。
让我假设你有一个。我将其称为?
。
然后您可以使用first_value()
:
select t.*,
first_value(wa_calc) over (partition by id order by ? desc) as wa_calc_final
from t;