表 DateRangeTab (Fromdate, Todate, TotalValue) 有如下数据:
2010-01-01, 2011-01-01, 0
2010-01-01, 2012-01-01, 0
等(即很多日期范围在 TotalValue 列中都为 0)
我还有表 ValueTab (DateofValue, Value) ,其中包含以下数据:
2010-01-02, £25
2011-01-01, £45
2011-05-04, £65
等(即许多不同的行,其中包含日期和每个日期的值)
我需要使用 ValueTab 表中的值的总和更新 DateRangeTab TotalValue 列,其中 DateofValue 位于 FromDate - Todate 范围内。
我尝试了以下方法:
Update DateRangeTab
set TotalValue = a.Value
from (select sum(value) as Value
from ValueTab VT
join DateRangeTab DT
on VT.DateofValue between DT.startdate and DT.ToDate) a
但它在 DateRangeTab 的每一行中都设置了相同的总数。希望有人可以帮助或将我引导到另一个具有相关答案的帖子。
谢谢