我最近将
一个约60,000条记录导入到
一个表中,该表将
一个表中的数据与另
一个表中的数据相关联.但是,我的客户已经要求将排序顺序
添加到所有60k记录中.我希望有一种很好的清洁
方法可以在
sql Update中
自动生成这些排序顺序.完成的数据应如下所示:
item1ID item2ID sortOrder
1 123 1
1 12 2
1 45 3
1 22 4
1 456 5
2 5 1
2 234 2
2 56 3
可以这样做吗?任何建议都将非常感激.
–Anne
您可以使用[ROW_NUMBER] [1]并按Item1ID进行分区
UPDATE t1
SET t1.sortOrder = t2.sortOrder
FROM @t t1
INNER JOIN
(SELECT Item1ID,Item2ID,ROW_NUMBER() OVER
(PARTITION BY Item1ID ORDER BY Item1ID,Item2ID) AS SortOrder
from @t) t2
ON t1.Item1ID = t2.Item1ID
AND t1.Item2ID = t2.Item2ID