gpt4 book ai didi

sql - 获取值的总和到表的下一行

转载 作者:行者123 更新时间:2023-12-02 08:07:01 25 4
gpt4 key购买 nike

我有一个表Parameter_List和字段Parameter_ID,Parameters_Name,Target_Value,GroupID和Sequence_No。
值可以是

Parameter_ID    Parameters_Name Target_Value    GroupID Sequence_No  
1 Para_1 1000 2 1
2 Para_2 2000 2 2
3 Para_3 3000 2 3
4 Para_4 NULL 2 4
5 Para_5 5000 2 5

6 Para_1 1450 3 1
7 Para_2 1200 3 2
8 Para_4 NULL 3 3
9 Para_5 3000 3 4

10 Para_2 3000 4 1
11 Para_3 4000 4 2
12 Para_4 NULL 4 3

如您所见,Para_4的Target_Value始终为NULL。
现在,当我要显示记录时,我希望Para_4的值是该组Para_4上方参数的Target_Value之和。
例如,对于GroupID 2,Para_4的值应为前3行的总和。表有一个Sequence_No列。因此,Para_4应该具有Target_Value作为该特定组中其上方所有行的总和。
它应该按GroupID分组。所以结果看起来像
Para_1  1000    2
Para_2 2000 2
Para_3 3000 2
Para_4 6000 2
Para_5 5000 2

Para_1 1450 3
Para_2 1200 3
Para_4 2650 3
Para_5 3000 3

最佳答案

晚了晚会,但这里还有另外一种解决方案-

SELECT t.Parameters_Name, t.GroupID,
CASE when t.Target_Value IS NULL THEN
(select sum(Target_Value) as runningTotal
from Parameter_List
where GroupID = t.GroupID and Sequence_No <= t.Sequence_No) ELSE t.Target_Value END AS Target_Value
FROM Parameter_List t

关于sql - 获取值的总和到表的下一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50460006/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com