【发布时间】:2021-06-08 17:33:11
【问题描述】:
我有下表:
我正在尝试编写一个更新,用大于零的先前值填充零
我尝试了以下查询但没有成功
1.
With cte As
(
SELECT [ID], [Q_G_R_BUOM], ROW_NUMBER() OVER (ORDER BY [ID] Asc) AS RN
FROM [Testing_Lag]
)
update cte set [Q_G_R_BUOM]=iif([Q_G_R_BUOM]>0,[Q_G_R_BUOM],(SELECT [Q_G_R_BUOM] FROM cte WHERE [ID]=[ID]-1))
With cte As
(
SELECT [ID], [Q_G_R_BUOM], ROW_NUMBER() OVER (ORDER BY [ID] Asc) AS RN
FROM [Testing_Lag]
)
update cte set [Q_G_R_BUOM]=iif([Q_G_R_BUOM]>0,[Q_G_R_BUOM],(Lag([Q_G_R_BUOM], 1) OVER(ORDER BY [ID] ASC)))
如果有人能帮助我,我将不胜感激 谢谢
【问题讨论】:
标签: sql asp.net sql-server tsql azure-sql-database