我正在尝试更新另一个累计和的列。
这是我对累积金额的查询。现在我需要在表格中更新它。 请在此建议。
SELECT s.[MM], s.[ProjectID], s.[Total_To_Bill],
ISNULL((
SELECT SUM(SS.[Total_To_Bill])
FROM @mtss1 SS WHERE SS.[ProjectID] = s.[ProjectID]
AND SS.MM <= S.MM), 0) AS [ProjectedBillable] FROM @mtss1 AS s
答案 0 :(得分:0)
假设MM是每一行的唯一键,以下是您想要的:
with toupdate as (
SELECT s.[MM],s.[ProjectID], s.[Total_To_Bill],
Isnull((select SUM(SS.[Total_To_Bill])
FROM @mtss1 SS
WHERE SS.[ProjectID] = s.[ProjectID] and SS.MM <= S.MM) ,0
) As [ProjectedBillable]
From @mtss1 As s
)
update t
set t.cumsum = toupdate.ProjectedBillable
from toupdate
where t.mm= toupdate.MM and t.MM
如果MM没有定义每一行,那么你需要一列或一组列。