FoxPro中将新行的上一行值相乘并相减

问题描述 投票:1回答:1

我正在尝试在fox pro中编写命令,以帮助我在看起来像这样的表中计算两个变量

age   death_rate   alive   dead
1      0.003       1000     3
2      0.001       997      1
3      0.0006
4      0.005
5      0.002
...

x岁时的存活=(x-1岁时的存活)-(x-1岁时的死亡)

x岁时的死亡=(x岁时的死亡率)*(x岁时的存活率]

我正在尝试自动计算剩余的存活和死亡值,但是两个空列在计算中是相互依赖的,我不确定命令的外观如何

sql visual-foxpro foxpro
1个回答
0
投票

您可以使用自我加入

select age   death_rate, b.alive - b.dead as alive, a.death_rate*(b.alive - b.dead)  as dead
from tbl a left join tbl b on a.age - 1 = b.age
© www.soinside.com 2019 - 2024. All rights reserved.