我有一个非常快速的问题。我有一系列订单,每个订单都有优先级。优先级可以是NULL或INT。时不时地我想从1开始安排优先级。
例如:
NULL, NULL, 5, NULL, 7, NULL, NULL, 15
将其更改为
NULL, NULL, 1, NULL, 2, NULL, NULL, 3
UPDATE
实现此目的最有效的 SQL语法是什么?任何想法?我找不到存档的好方法,只能使用光标。
干杯,山姆
编辑 - 按照 Giorgos Betsos 的要求
模式(为问题目的而简化)
CREATE TABLE [dbo].[tblOrder]
(
[OrderId] [int] NOT NULL,
[Priority] [int] NULL,
CONSTRAINT [PK_tblOrder]
PRIMARY KEY ([OrderId] ASC)
)
样本输出
Order Id | Priority
---------+---------
12343 | NULL
12344 | NULL
...
...
...
12449 | 5
12450 | NULL
12451 | 7
...
...
...
12900 | NULL
12901 | NULL
12902 | 15
谢谢!