2012-10-16 19 views

回答

6

您可以使用ROW_NUMBER

WITH CTE AS 
(
    SELECT Id, Title, [Order] 
    , OrderNumber = ROW_NUMBER() OVER (ORDER BY Date) 
    FROM Tbl 
) 
UPDATE CTE SET [Order] = CTE.OrderNumber; 

這裏有一個小提琴:http://sqlfiddle.com/#!3/8831d/2/0

+0

謝謝!但是可能有更簡單的語法嗎? – Dmitry

+1

@Altaveron:這可能是最簡單的方法 –

+1

@Altaveron:熟悉['CTE'](http://msdn.microsoft.com/en-us/library/ms190766(v = sql) .105).aspx)這很容易,'ROW_NUMBER'不言而喻,不是嗎? –