我想知道在更新表时是否有使用order by子句的方法.我正在更新表并设置一个连续的数字,这就是更新顺序很重要的原因.使用以下sql语句,我能够在不使用游标的情况下解决它:
DECLARE @Number INT = 0
UPDATE Test
SET @Number = Number = @Number +1
Run Code Online (Sandbox Code Playgroud)
现在我想要做的是这样的order by子句:
DECLARE @Number INT = 0
UPDATE Test
SET @Number = Number = @Number +1
ORDER BY Test.Id DESC
Run Code Online (Sandbox Code Playgroud)
我读过:如何使用ms sql更新和订购此问题的解决方案无法解决排序问题 - 它们只是过滤了应用更新的项目.
小心,马丁
sql-server ×1